bug: 企标顺序号发布时多余占用问题

This commit is contained in:
wxyclub
2023-11-21 11:10:43 +08:00
parent 5868ae2ba0
commit 8db3ef8bd4
3 changed files with 24 additions and 9 deletions
@@ -732,8 +732,8 @@ public class SarBussionessStandController extends BaseController<SarBussionessSt
@ApiOperation(value = "企标发布节点完成任务和入库接口执行前先执行校验编号和名称校验")
@PostMapping("/ifStandCodebyStandName")
public ResponseMessage ifStandCodeByStandName(String standCode,String standName,String taskIds,String standNum){
return sarBussionessStandEOService.ifStandCodeByStandName(standCode,standName,taskIds,standNum);
public ResponseMessage ifStandCodeByStandName(String standCode,String standName,String taskIds,String standNum,String standSort){
return sarBussionessStandEOService.ifStandCodeByStandName(standCode,standName,taskIds,standNum,standSort);
}
}
@@ -73,6 +73,6 @@ public interface ISarBussionessStandService extends IService<SarBussionessStand>
String selectMaxStandSn(String standSort);
ResponseMessage ifStandCodeByStandName(String standCode, String standName, String taskIds, String standNum);
ResponseMessage ifStandCodeByStandName(String standCode, String standName, String taskIds, String standNum,String standSort);
}
@@ -4735,7 +4735,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
}
@Override
public ResponseMessage<?> ifStandCodeByStandName(String standCode, String standName, String taskIds, String standNum) {
public ResponseMessage<?> ifStandCodeByStandName(String standCode, String standName, String taskIds, String standNum, String standSort) {
if (StringUtils.isBlank(standCode) || StringUtils.isBlank(standName)) {
return Result.error("企标编号或企标名称不能为空");
}
@@ -4758,11 +4758,26 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
updateWrapper.set(SarBussStandSn::getTaskId,null);
sarBussStandSnService.update(updateWrapper);
// 保存新的顺序号
sarBussStandSn.setId(UUIDUtils.randomUUID20());
sarBussStandSn.setStandSn(standNum);
sarBussStandSn.setCreationTime(new Date());
sarBussStandSn.setModifyTime(new Date());
sarBussStandSnService.save(sarBussStandSn);
SarBussStandSn sarBussStandSn1 = new SarBussStandSn();
sarBussStandSn1.setId(UUIDUtils.randomUUID20());
sarBussStandSn1.setReviseStatus(sarBussStandSn.getReviseStatus());
sarBussStandSn1.setUseStatus("yes");
sarBussStandSn1.setValidFlag("0");
sarBussStandSn1.setStandSort(standSort);
sarBussStandSn1.setTaskId(taskIds);
sarBussStandSn1.setStandSn(standNum);
sarBussStandSn1.setCreationTime(new Date());
sarBussStandSn1.setModifyTime(new Date());
sarBussStandSnService.save(sarBussStandSn1);
} else {
// 去除多余占用的顺序号
LambdaUpdateWrapper<SarBussStandSn> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(SarBussStandSn::getTaskId,taskIds);
updateWrapper.ne(SarBussStandSn::getStandSn,standNum);
updateWrapper.set(SarBussStandSn::getValidFlag,"1");
updateWrapper.set(SarBussStandSn::getUseStatus,"no");
updateWrapper.set(SarBussStandSn::getTaskId,null);
sarBussStandSnService.update(updateWrapper);
}
}
}