diff --git a/src/main/java/com/glxp/api/controller/collect/IoCollectCodeBackupController.java b/src/main/java/com/glxp/api/controller/collect/IoCollectCodeBackupController.java index cef26cf60..2a24c5522 100644 --- a/src/main/java/com/glxp/api/controller/collect/IoCollectCodeBackupController.java +++ b/src/main/java/com/glxp/api/controller/collect/IoCollectCodeBackupController.java @@ -206,7 +206,7 @@ public class IoCollectCodeBackupController extends BaseController { @GetMapping("/udiwms/basic/collect/ioCollectCodeBackup/retrace") public BaseResponse retraceCodeList(IoCollectCodeRequest ioCollectCodeRequest, - BindingResult bindingResult) { + BindingResult bindingResult) { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } diff --git a/src/main/java/com/glxp/api/controller/collect/IoCollectOrderController.java b/src/main/java/com/glxp/api/controller/collect/IoCollectOrderController.java index a2590cea0..b806cb535 100644 --- a/src/main/java/com/glxp/api/controller/collect/IoCollectOrderController.java +++ b/src/main/java/com/glxp/api/controller/collect/IoCollectOrderController.java @@ -334,7 +334,7 @@ public class IoCollectOrderController extends BaseController { collectOrder.setUpdateTime(new Date()); collectOrder.setUpdateUser(getUserId()); boolean update = collectOrderService.update(new LambdaUpdateWrapper().eq(IoCollectOrder::getBillNo, collectOrder.getBillNo()) - .set(IoCollectOrder::getTagStatus, 2).set(IoCollectOrder::getUpdateUser,getUserId())); + .set(IoCollectOrder::getTagStatus, 2).set(IoCollectOrder::getUpdateUser, getUserId())); if (collectOrder.getTagStatus() == 2) { collectOrderOriginService.update(new LambdaUpdateWrapper().eq(IoCollectOrderOrigin::getBillNo, collectOrder.getBillNo()) .set(IoCollectOrderOrigin::getTagStatus, 2)); @@ -622,13 +622,13 @@ public class IoCollectOrderController extends BaseController { } - @Resource IoCollectOriginService collectOriginService; + @PostMapping("/udiwms/basic/collect/order/finishReturnOrder") @Transactional(rollbackFor = Exception.class) public BaseResponse finishReturnOrder(@RequestBody CollectOrderRequest collectOrderRequest) { - return collectOriginService.submitreturnOrder(collectOrderRequest,1); + return collectOriginService.submitreturnOrder(collectOrderRequest, 1); } diff --git a/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java b/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java index 198d3081a..6c4e80f90 100644 --- a/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java @@ -212,7 +212,7 @@ public class IoSplitCodeService extends ServiceImpl collectOrderCodeMEN = collectOrderCodeManService.listByBillNo(collectOrder.getBillNo()); if (CollUtil.isNotEmpty(collectOrderCodeMEN)) { //扫码冲突 -// dealOrderReplace(collectOrderCodeMEN, collectOrder,putWorkPlaceCode); + dealOrderReplace(collectOrderCodeMEN, collectOrder, putWorkPlaceCode); for (IoCollectOrderCodeMan collectOrderCodeMan : collectOrderCodeMEN) { if (IntUtil.value(collectOrderCodeMan.getRemoveFlag())) { continue; @@ -371,17 +371,22 @@ public class IoSplitCodeService extends ServiceImpl collectOrderCodeManList, IoCollectOrder collectOrder,Long putWorkPlaceCode) { + public void dealOrderReplace(List collectOrderCodeManList, IoCollectOrder collectOrder, Long putWorkPlaceCode) { for (IoCollectOrderCodeMan collectOrderCodeMan : collectOrderCodeManList) { // 1. 查找已完成成单据扫码是否已被分配 - List collectCodeBackups = collectCodeBackMapper.selectList(new LambdaQueryWrapper().eq(IoCollectCodeBackup::getBusType, collectOrder.getBusType()).eq(IoCollectCodeBackup::getCode, collectOrderCodeMan.getUdiCode()).eq(IoCollectCodeBackup::getIsSplitCode, 0)); + List collectCodeBackups = collectCodeBackMapper.selectList(new LambdaQueryWrapper().eq(IoCollectCodeBackup::getBusType, collectOrder.getBusType()).eq(IoCollectCodeBackup::getCode, collectOrderCodeMan.getUdiCode())); if (CollUtil.isNotEmpty(collectCodeBackups)) { IoCollectCodeBackup collectCodeBackup = collectCodeBackups.get(0); + // 1. 如果本身标记为手动整取,则应报错提示,重复扫码 if (IntUtil.value(collectCodeBackup.getFifoSplit()) == 3) { throw new JsonException(500, collectCodeBackup.getCode() + "重复扫码,请盘查后重试!"); } + // 不管是自动拆零或者手动拆零直接忽略,不走冲突赋码逻辑 + if (IntUtil.value(collectCodeBackup.getFifoSplit()) != 2) { + break; + } IoCollectOrderBackup collectOrderBackup = collectOrderBackupMapper.selectOne(new LambdaQueryWrapper().eq(IoCollectOrderBackup::getBillNo, collectCodeBackup.getBillNo())); collectOrderCodeMan.setRemoveFlag(true); @@ -635,26 +640,11 @@ public class IoSplitCodeService extends ServiceImpl codeAutoList, IoCollectOrderBackup collectOrder) { - if (CollUtil.isEmpty(codeAutoList)) - return; + if (CollUtil.isEmpty(codeAutoList)) return; List ioCollectCodes = new ArrayList<>(); for (IoCollectOrderCodeAuto collectOrderCodeAuto : codeAutoList) { UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(collectOrderCodeAuto.getRelId() + ""); - ioCollectCodes.add(IoCollectCodeBackup.builder().code(collectOrderCodeAuto.getUdiCode()) - .fromType(collectOrder.getFromType()) - .busType(collectOrder.getBusType()) - .billNo(collectOrder.getBillNo()) - .fromCorp(collectOrder.getFromCorp()) - .operTime(collectOrder.getUpdateTime()) - .operUser(collectOrder.getCreateUser()) - .fifoSplit(1) - .relId(collectOrderCodeAuto.getRelId()) - .workPlaceCode(collectOrder.getWorkPlaceCode()) - .remark(collectOrder.getRemark()) - .purType(udiRelevanceResponse.getPurType()) - .inBatchNo(System.currentTimeMillis()) - .reCount(collectOrderCodeAuto.getReCount()) - .build()); + ioCollectCodes.add(IoCollectCodeBackup.builder().code(collectOrderCodeAuto.getUdiCode()).fromType(collectOrder.getFromType()).busType(collectOrder.getBusType()).billNo(collectOrder.getBillNo()).fromCorp(collectOrder.getFromCorp()).operTime(collectOrder.getUpdateTime()).operUser(collectOrder.getCreateUser()).fifoSplit(1).relId(collectOrderCodeAuto.getRelId()).workPlaceCode(collectOrder.getWorkPlaceCode()).remark(collectOrder.getRemark()).purType(udiRelevanceResponse.getPurType()).inBatchNo(System.currentTimeMillis()).reCount(collectOrderCodeAuto.getReCount()).build()); } collectCodeBackService.saveBatch(ioCollectCodes); } diff --git a/src/main/resources/mybatis/mapper/collect/IoCollectCodeBackMapper.xml b/src/main/resources/mybatis/mapper/collect/IoCollectCodeBackMapper.xml index ae460d90d..44a717a66 100644 --- a/src/main/resources/mybatis/mapper/collect/IoCollectCodeBackMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoCollectCodeBackMapper.xml @@ -30,7 +30,7 @@ AND iccb.code LIKE concat( #{code}, '%') - AND iccb.billNo LIKE concat(#{billNo}, '%') + AND iccb.billNo = #{billNo} AND iccb.relId = #{relId}