|
|
|
@ -368,7 +368,7 @@ public class ErfTriConfirmServiceImpl implements ErfTriConfirmService { |
|
|
|
|
|
|
|
@Override |
|
|
|
public void deleteTriConfirmProcess(String applyNo, String processStep) { |
|
|
|
log.info("删除三方确认工序: applyNo={}, processStep={}", applyNo, processStep); |
|
|
|
log.info("=== 删除三方确认工序 === applyNo={}, processStep={}", applyNo, processStep); |
|
|
|
|
|
|
|
// 使用联合主键删除 |
|
|
|
QueryWrapper<ErfExpTriConfirm> query = new QueryWrapper<>(); |
|
|
|
@ -386,7 +386,59 @@ public class ErfTriConfirmServiceImpl implements ErfTriConfirmService { |
|
|
|
.eq("process_step", processStep); |
|
|
|
erfExpTriConfirmDetailMapper.delete(detailQuery); |
|
|
|
|
|
|
|
log.info("删除成功"); |
|
|
|
log.info("工序删除成功"); |
|
|
|
|
|
|
|
// 重新排序剩余工序,确保顺序始终是连续的 1、2、3、4... |
|
|
|
reorderProcessSequence(applyNo); |
|
|
|
|
|
|
|
log.info("=== 删除完成 ==="); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 重新排序工序顺序,确保顺序始终是连续的 1、2、3、4... |
|
|
|
* |
|
|
|
* @param applyNo 申请单号 |
|
|
|
*/ |
|
|
|
private void reorderProcessSequence(String applyNo) { |
|
|
|
log.info("🔄 开始重新排序工序: applyNo={}", applyNo); |
|
|
|
|
|
|
|
// 查询当前所有工序,按照现有的 process_seq 排序 |
|
|
|
QueryWrapper<ErfExpTriConfirm> query = new QueryWrapper<>(); |
|
|
|
query.eq("apply_no", applyNo) |
|
|
|
.orderByAsc("process_seq"); |
|
|
|
|
|
|
|
List<ErfExpTriConfirm> processes = erfExpTriConfirmMapper.selectList(query); |
|
|
|
|
|
|
|
if (processes == null || processes.isEmpty()) { |
|
|
|
log.info("没有工序需要重新排序"); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
log.info("查询到 {} 个工序,开始重新分配序号", processes.size()); |
|
|
|
|
|
|
|
// 重新分配连续的序号 1、2、3、4... |
|
|
|
for (int i = 0; i < processes.size(); i++) { |
|
|
|
ErfExpTriConfirm process = processes.get(i); |
|
|
|
int newSeq = i + 1; // 从1开始 |
|
|
|
|
|
|
|
// 如果序号已经是正确的,跳过更新 |
|
|
|
if (process.getProcessSeq() != null && process.getProcessSeq() == newSeq) { |
|
|
|
log.info("工序 [{}] 序号已正确: {}", process.getProcessStep(), newSeq); |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
log.info("更新工序 [{}] 序号: {} -> {}", process.getProcessStep(), process.getProcessSeq(), newSeq); |
|
|
|
|
|
|
|
// 使用联合主键更新序号 |
|
|
|
UpdateWrapper<ErfExpTriConfirm> updateWrapper = new UpdateWrapper<>(); |
|
|
|
updateWrapper.eq("apply_no", applyNo) |
|
|
|
.eq("process_step", process.getProcessStep()) |
|
|
|
.set("process_seq", newSeq); |
|
|
|
|
|
|
|
erfExpTriConfirmMapper.update(null, updateWrapper); |
|
|
|
} |
|
|
|
|
|
|
|
log.info("✅ 工序重新排序完成"); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
|