From ed749bd370783b6e055a31b9c6040ea996d181b3 Mon Sep 17 00:00:00 2001 From: wangwei <1610949092@qq.com> Date: Wed, 19 Feb 2025 16:11:43 +0800 Subject: [PATCH] =?UTF-8?q?2/19=20=E6=89=AB=E7=A0=81=E5=89=94=E9=99=A41.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inout/IoCodeTempController.java | 82 +++++++++++++++++++ .../api/entity/inout/IoCodeTempEntity.java | 6 ++ .../glxp/api/req/inout/AddOrderRequest.java | 1 + .../glxp/api/req/inout/FilterCodeRequest.java | 11 +++ .../api/req/inout/IoSplitFifoCodeRequest.java | 8 ++ .../api/service/inout/IoCodeTempService.java | 14 ++++ .../service/inout/IoSplitFifoCodeService.java | 8 ++ .../mybatis/mapper/inout/IoCodeTempDao.xml | 5 ++ .../mapper/inout/IoSplitFifoCodeMapper.xml | 4 + src/main/resources/schemas/schema_v2.4.sql | 6 ++ 10 files changed, 145 insertions(+) diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java index cb04cce8a..0ea19ab5c 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -143,6 +143,9 @@ public class IoCodeTempController extends BaseController { @Resource SysOrderLedService sysOrderLedService; + @Autowired + IoSplitFifoCodeService ioSplitFifoCodeService; + /** * PDA-----单据上传 @@ -1652,6 +1655,7 @@ public class IoCodeTempController extends BaseController { codeEnttity.setProductType(2); codeEnttity.setCount(1); codeEnttity.setGroupNumber(groupNumber); + codeEnttity.setQueueCode(addOrderRequest.getWorkPlaceQueueCode()); //如果是阿里拉的单据会有批次号 @@ -3135,4 +3139,82 @@ public class IoCodeTempController extends BaseController { } + @AuthRuleAnnotation("") + @PostMapping("/udiwms/warehouse/inout/deleteCode") + public BaseResponse deleteCode(@RequestBody FilterCodeRequest filterCodeRequest){ + // 已经做过校验了 所以 要上药队列 还是库存队列 的码 然后进行扣减库存 删码 + IoCodeTempEntity ioCodeTemp = codeTempService.selectOone(filterCodeRequest); + if (ioCodeTemp != null){ + codeTempService.removeCodeById(ioCodeTemp); + return ResultVOUtils.success(processUdiAndReturnSuccess(filterCodeRequest)); + } + IoSplitFifoCodeEntity ioSplitFifoCode = ioSplitFifoCodeService.selectOne(filterCodeRequest); + if (ioSplitFifoCode != null){ + ArrayList codes = new ArrayList<>(); + codes.add(ioSplitFifoCode.getCode()); + ioSplitFifoInvService.removeByCodes(codes,filterCodeRequest.getWorkPlaceCode()); + return ResultVOUtils.success(processUdiAndReturnSuccess(filterCodeRequest)); + } + //判断是上位队列 还是 库存 + return ResultVOUtils.error(500,"追溯码不存在"); + } + + public AddEnterCodeResponse processUdiAndReturnSuccess(FilterCodeRequest filterCodeRequest){ + UdiEntity udiEntity = FilterUdiUtils.getUdi(filterCodeRequest.getCode()); + UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi()); + udiEntity.setCode(filterCodeRequest.getCode()); + return setAddEnterCodeResponse(udiEntity, checkUdi); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/warehouse/inout/deleteCodes") + public BaseResponse deleteCodes(@RequestBody FilterCodeRequest filterCodeRequest){ + List codeList = filterCodeRequest.getCodeList(); + AddCodeResult addCodeResult = new AddCodeResult(); + List vailCodeResultResponses = new ArrayList<>(); + for (String code : codeList) { + VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse(); + filterCodeRequest.setCode(code); + IoCodeTempEntity ioCodeTemp = codeTempService.selectOone(filterCodeRequest); + if (ioCodeTemp != null){ + codeTempService.removeCodeById(ioCodeTemp); + vailCodeResultResponse.setCode(code); + vailCodeResultResponse.setStatus(1); + vailCodeResultResponse.setErrMsg("正确"); + vailCodeResultResponses.add(vailCodeResultResponse); + continue; + } + IoSplitFifoCodeEntity ioSplitFifoCode = ioSplitFifoCodeService.selectOne(filterCodeRequest); + if (ioSplitFifoCode != null){ + ArrayList codes = new ArrayList<>(); + codes.add(ioSplitFifoCode.getCode()); + ioSplitFifoInvService.removeByCodes(codes,filterCodeRequest.getWorkPlaceCode()); + vailCodeResultResponse.setCode(code); + vailCodeResultResponse.setStatus(1); + vailCodeResultResponse.setErrMsg("正确"); + vailCodeResultResponses.add(vailCodeResultResponse); + continue; + } + vailCodeResultResponse.setCode(code); + vailCodeResultResponse.setStatus(2); + vailCodeResultResponse.setErrMsg("追溯码不存在"); + vailCodeResultResponses.add(vailCodeResultResponse); + } + addCodeResult.setVailCodeResultResponses(vailCodeResultResponses); + return ResultVOUtils.success(addCodeResult); + } + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/warehouse/inout/fallback") + public BaseResponse fallback(@RequestBody FilterCodeRequest filterCodeRequest){ + List codeList = codeTempService.selectListByGroupNumber(filterCodeRequest.getGroupNumber()); + for (IoCodeTempEntity codeTempEntity : codeList) { + codeTempService.removeCodeById(codeTempEntity); + } + return ResultVOUtils.success(); + } + + + } diff --git a/src/main/java/com/glxp/api/entity/inout/IoCodeTempEntity.java b/src/main/java/com/glxp/api/entity/inout/IoCodeTempEntity.java index a3f195f33..647d79335 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoCodeTempEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoCodeTempEntity.java @@ -234,4 +234,10 @@ public class IoCodeTempEntity { */ @TableField(value = "groupNumber") private Integer groupNumber; + + /** + * 槽位编码 + */ + @TableField(value = "queueCode") + private String queueCode; } diff --git a/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java b/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java index 6025ed33b..c3f5a01b3 100644 --- a/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/AddOrderRequest.java @@ -62,4 +62,5 @@ public class AddOrderRequest { * 上货货位编码 */ private String workPlaceQueueCode; + } diff --git a/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java b/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java index 871d99e18..c5aa8a6eb 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterCodeRequest.java @@ -86,4 +86,15 @@ public class FilterCodeRequest extends ListPageRequest { * 工位库存队列删除 */ private Long workPlaceCode; + + /** + * 槽位编码 + */ + private String queueCode; + + /** + * 组号 + */ + private Integer groupNumber; + } diff --git a/src/main/java/com/glxp/api/req/inout/IoSplitFifoCodeRequest.java b/src/main/java/com/glxp/api/req/inout/IoSplitFifoCodeRequest.java index 71813db71..60372c540 100644 --- a/src/main/java/com/glxp/api/req/inout/IoSplitFifoCodeRequest.java +++ b/src/main/java/com/glxp/api/req/inout/IoSplitFifoCodeRequest.java @@ -132,4 +132,12 @@ public class IoSplitFifoCodeRequest extends ListPageRequest { private String remark; private Integer fifoSplit; + + + /** + * 槽位 + */ + private String workPlaceQueueCode; + + } diff --git a/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java b/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java index abb7c2c53..c62d91930 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCodeTempService.java @@ -330,6 +330,20 @@ public class IoCodeTempService { return ioCodeTempDao.selectMaxGroupNumber(); } + public IoCodeTempEntity selectOone(FilterCodeRequest filterCodeRequest) { + return ioCodeTempDao.selectOne(new LambdaQueryWrapper() + .eq(IoCodeTempEntity::getCode,filterCodeRequest.getCode()) + .eq(IoCodeTempEntity::getQueueCode,filterCodeRequest.getQueueCode()) + .eq(IoCodeTempEntity::getAction,"SC72197936495755") + ); + } + + public List selectListByGroupNumber(Integer groupNumber) { + return ioCodeTempDao.selectList(new LambdaQueryWrapper() + .eq(IoCodeTempEntity::getGroupNumber,groupNumber) + ); + } + // public IoCodeTempResponse convertToIoCodeTempResponse(IoCodeResponse response) { // IoCodeTempResponse tempResponse = new IoCodeTempResponse(); // BeanUtils.copyProperties(response,tempResponse); diff --git a/src/main/java/com/glxp/api/service/inout/IoSplitFifoCodeService.java b/src/main/java/com/glxp/api/service/inout/IoSplitFifoCodeService.java index b8ae29a28..e46e80d55 100644 --- a/src/main/java/com/glxp/api/service/inout/IoSplitFifoCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoSplitFifoCodeService.java @@ -24,6 +24,7 @@ import com.glxp.api.exception.JsonException; import com.glxp.api.req.collect.CollectOrderBizRequest; import com.glxp.api.req.collect.CollectOrderRequest; import com.glxp.api.req.dev.DeviceChangeOrderParam; +import com.glxp.api.req.inout.FilterCodeRequest; import com.glxp.api.req.inout.IoAutoPutRequest; import com.glxp.api.req.inout.IoSplitFifoCodeRequest; import com.glxp.api.req.inout.IoSplitFifoInvRequest; @@ -565,4 +566,11 @@ public class IoSplitFifoCodeService extends ServiceImpl(); } + + public IoSplitFifoCodeEntity selectOne(FilterCodeRequest filterCodeRequest) { + return getOne(new LambdaQueryWrapper() + .eq(IoSplitFifoCodeEntity::getCode, filterCodeRequest.getCode()) + .eq(IoSplitFifoCodeEntity::getWorkPlaceQueueCode, filterCodeRequest.getQueueCode()) + .eq(IoSplitFifoCodeEntity::getAction, "SC72197936495755")); + } } diff --git a/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml b/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml index 223278e19..aa13337f6 100644 --- a/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoCodeTempDao.xml @@ -28,8 +28,13 @@ AND ic.action = #{action} + + AND ic.queueCode = #{queueCode} + + GROUP BY ic.id + ORDER BY ic.groupNumber DESC diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index ad539704f..39b54446c 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -5274,3 +5274,9 @@ CALL Pro_Temp_ColumnWork('io_order_detail_biz', 'ycBizNo', CALL Pro_Temp_ColumnWork('io_code_temp', 'groupNumber', 'int NULL DEFAULT NULL COMMENT ''组号''', 1); + + +CALL Pro_Temp_ColumnWork('io_code_temp', 'queueCode', + ' varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''槽位编码''', + 1); +