From 7f8a26354ee61a79b18ce321bc5a8380e660a95c Mon Sep 17 00:00:00 2001 From: yewj Date: Mon, 14 Oct 2024 10:43:12 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E5=A4=8D=E6=89=AB=E7=A0=81=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inout/IoCodeTempController.java | 31 ++++++++++------ .../controller/inout/IoOrderController.java | 16 +++----- .../collect/IoCollectOrderCodeManMapper.java | 3 ++ .../collect/CollectOrderCodeManRequest.java | 1 + .../collect/IoCollectOrderCodeManService.java | 37 ++++++++++++++++++- .../service/inout/IoCheckInoutService.java | 7 +--- .../api/service/inout/IoGenInvService.java | 4 +- .../api/service/inout/IoSplitCodeService.java | 8 ++++ .../collect/IoCollectOrderCodeManMapper.xml | 16 ++++++++ 9 files changed, 92 insertions(+), 31 deletions(-) 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 b94319619..0c4b199e9 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -595,6 +595,8 @@ public class IoCodeTempController extends BaseController { @Resource IoSplitFifoCodeService fifoCodeService; + @Resource + IoSplitCodeService splitCodeService; @Transactional(rollbackFor = Exception.class) public BaseResponse addMaterOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code) { @@ -684,7 +686,6 @@ public class IoCodeTempController extends BaseController { } - String orderId = addOrderRequest.getBillNo(); //三期校验 @@ -808,9 +809,9 @@ public class IoCodeTempController extends BaseController { //校验码表是否已经存在追溯码 io_code_temp - IoCodeTempEntity codeTempEntity1 = codeTempService.selectByCode(code,udiEntity.getBatchNo(),bussinessTypeEntity.getAction()); - if (codeTempEntity1 != null){ - return ResultVOUtils.error(533,"扫码重复或当前追溯码已存在草稿单据中!"); + IoCodeTempEntity codeTempEntity1 = codeTempService.selectByCode(code, udiEntity.getBatchNo(), bussinessTypeEntity.getAction()); + if (codeTempEntity1 != null) { + return ResultVOUtils.error(533, "扫码重复或当前追溯码已存在草稿单据中!"); } //校验工位存量是否存在 if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) { @@ -1305,25 +1306,33 @@ public class IoCodeTempController extends BaseController { //校验码表是否已经存在追溯码 io_code_temp - IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code,udiEntity.getBatchNo(),bussinessTypeEntity.getAction()); - if (codeTempEntity != null){ - return ResultVOUtils.error(533,"扫码重复或当前追溯码已存在草稿单据中!"); + IoCodeTempEntity codeTempEntity = codeTempService.selectByCode(code, udiEntity.getBatchNo(), bussinessTypeEntity.getAction()); + if (codeTempEntity != null) { + return ResultVOUtils.error(533, "扫码重复或当前追溯码已存在草稿单据中!"); } - //校验工位存量是否存在 + //------工位上货相关-----校验工位存量是否存在---- if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) { IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, addOrderRequest.getWorkPlaceCode()); if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) { return ResultVOUtils.error(533, "当前追溯码已存在!"); } - } else { + IoSplitCodeEntity splitCodeEntity = splitCodeService.findByCode(code); + if (splitCodeEntity != null && StrUtil.isNotEmpty(splitCodeEntity.getSerialNo())) { + return ResultVOUtils.error(533, "当前追溯码已存在!"); + } + + } else if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_RETURN)) { IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(code, addOrderRequest.getWorkPlaceCode()); if (fifoCodeEntity == null) { return ResultVOUtils.error(500, "当前追溯码未上货!"); } - } - + IoSplitCodeEntity splitCodeEntity = splitCodeService.findByCode(code); + if (splitCodeEntity != null && StrUtil.isNotEmpty(splitCodeEntity.getSerialNo())) { + return ResultVOUtils.error(533, "当前追溯码已经拆零,无法退货!"); + } + } if (addOrderRequest.getFromCorp() == null || StrUtil.isNotEmpty(addOrderRequest.getSickerAdNum())) { diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java index 5f198dcb4..ee22b8439 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -327,7 +327,7 @@ public class IoOrderController extends BaseController { @AuthRuleAnnotation("") @PostMapping("warehouse/inout/saveOrderWeb") @Log(title = "单据管理", businessType = BusinessType.UPDATE) - public BaseResponse saveOrderWeb(@RequestBody AddOrderRequest addOrderRequest){ + public BaseResponse saveOrderWeb(@RequestBody AddOrderRequest addOrderRequest) { IoOrderEntity orderEntity = new IoOrderEntity(); if (addOrderRequest.getWorkPlaceCode() != null) { @@ -352,7 +352,7 @@ public class IoOrderController extends BaseController { } - if (addOrderRequest.getAction().equals(ConstantType.SPLIT_RETURN) || addOrderRequest.getAction().equals(ConstantType.SPLIT_OUT)){ + if (addOrderRequest.getAction().equals(ConstantType.SPLIT_RETURN) || addOrderRequest.getAction().equals(ConstantType.SPLIT_OUT)) { orderEntity.setStatus(1); } orderEntity.setFromCorp(ioAddInoutService.updateCorp(bussinessTypeEntity, addOrderRequest.getFromCorp(), addOrderRequest.getSickerAdNum())); @@ -420,7 +420,7 @@ public class IoOrderController extends BaseController { //上货校验追溯码是否重复 if (bussinessTypeEntity.getAction().equals(ConstantType.SPLIT_OUT)) { for (IoCodeTempEntity codeTempEntity : codeTempEntities) { - IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(codeTempEntity.getCode(),addOrderRequest.getWorkPlaceCode() ); + IoSplitFifoCodeEntity fifoCodeEntity = fifoCodeService.findByCode(codeTempEntity.getCode(), addOrderRequest.getWorkPlaceCode()); if (fifoCodeEntity != null && StrUtil.isNotEmpty(fifoCodeEntity.getSerialNo())) { return ResultVOUtils.error(500, "当前追溯码:" + fifoCodeEntity.getCode() + "已存在!"); } @@ -445,7 +445,6 @@ public class IoOrderController extends BaseController { } if (checkInoutService.checkManual(addOrderRequest.getBillNo())) { if (CollUtil.isNotEmpty(orderDetailBizEntities)) { - if (bussinessTypeEntity.getCheckWebNew() == 1) { String errMsg = checkInoutService.bizOrderCheck(orderDetailBizEntities, orderDetailCodeEntities); if (StrUtil.isNotEmpty(errMsg)) { @@ -481,8 +480,6 @@ public class IoOrderController extends BaseController { ioAddInoutService.dealProcess(orderEntity); checkInoutService.check(addOrderRequest.getBillNo()); } - - } else { return ResultVOUtils.error(500, "单据校验提交失败,请先录入业务单据!"); } @@ -1359,8 +1356,8 @@ public class IoOrderController extends BaseController { @PostMapping("/udiwms/inout/order/upProcessing") public BaseResponse isProcessing(@RequestBody AddOrderRequest addOrderRequest) { IoOrderEntity order = orderService.findByBillNo(addOrderRequest.getBillNo()); - if (order.getStatus() == 3){ - return ResultVOUtils.error(501,"此订单正在处理中"); + if (order.getStatus() == 3) { + return ResultVOUtils.error(501, "此订单正在处理中"); } order.setStatus(3);//订单从草稿改变成为3 表示正在处理中 order.setUpdateUser(getUserId() + ""); @@ -1371,12 +1368,11 @@ public class IoOrderController extends BaseController { @GetMapping("/udiwms/inout/order/getProcessingOrder") public BaseResponse getProcessingOrder(AddOrderRequest addOrderRequest) { - IoOrderResponse order = orderService.findByWorkPlaceCode(addOrderRequest.getWorkPlaceCode() + "",getUserId()); + IoOrderResponse order = orderService.findByWorkPlaceCode(addOrderRequest.getWorkPlaceCode() + "", getUserId()); return ResultVOUtils.success(order); } - public String checkId(IoOrderDetailBizEntity bizEntity, IoCodeTempEntity codeEntity) { if (bizEntity.getBindRlFk().longValue() == codeEntity.getRelId().longValue()) { diff --git a/src/main/java/com/glxp/api/dao/collect/IoCollectOrderCodeManMapper.java b/src/main/java/com/glxp/api/dao/collect/IoCollectOrderCodeManMapper.java index 0133e5ba2..6bdfeedd1 100644 --- a/src/main/java/com/glxp/api/dao/collect/IoCollectOrderCodeManMapper.java +++ b/src/main/java/com/glxp/api/dao/collect/IoCollectOrderCodeManMapper.java @@ -14,4 +14,7 @@ public interface IoCollectOrderCodeManMapper extends BaseMapper filterList(CollectOrderCodeManRequest collectOrderCodeManRequest); + IoCollectOrderCodeMan exitCode(CollectOrderCodeManRequest collectOrderCodeManRequest); + + } diff --git a/src/main/java/com/glxp/api/req/collect/CollectOrderCodeManRequest.java b/src/main/java/com/glxp/api/req/collect/CollectOrderCodeManRequest.java index ad6093180..149bcd301 100644 --- a/src/main/java/com/glxp/api/req/collect/CollectOrderCodeManRequest.java +++ b/src/main/java/com/glxp/api/req/collect/CollectOrderCodeManRequest.java @@ -29,5 +29,6 @@ public class CollectOrderCodeManRequest extends ListPageRequest { private Long updateUser; private Long bizIdFk; + private String busType; } diff --git a/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java b/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java index 4971c91ac..44f8735f9 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java @@ -82,6 +82,9 @@ public class IoCollectOrderCodeManService extends ServiceImpl filterList(CollectOrderCodeManRequest collectOrderCodeManRequest) { if (collectOrderCodeManRequest == null) { return Collections.emptyList(); @@ -99,6 +102,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo) .eq(IoCollectOrderCodeMan::getUdiCode, code).last("limit 1")); @@ -223,6 +227,19 @@ public class IoCollectOrderCodeManService extends ServiceImpl().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo)); } + + IoCollectOrderCodeMan exitCode(CollectOrderCodeManRequest collectOrderCodeManRequest) { + return collectOrderCodeManMapper.exitCode(collectOrderCodeManRequest); + } + } diff --git a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java index e947245f4..0ba6c43c0 100644 --- a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java +++ b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java @@ -1156,7 +1156,6 @@ public class IoCheckInoutService { } } } - } List backCodeList = new ArrayList<>(); @@ -1165,18 +1164,13 @@ public class IoCheckInoutService { backCodeList.add(codeEntity); } } - //更新预验收单为已被选入 OrderEditRequest orderEditRequest = new OrderEditRequest(); orderEditRequest.setOrderIds(orderList); orderEditRequest.setPreInSelected(1); orderService.updateBatchOrder(orderEditRequest); genBackOrder(orderEntity, backCodeList); - - } - - } else { //按仓库货位退货 List backCodeList = new ArrayList<>(); @@ -1249,6 +1243,7 @@ public class IoCheckInoutService { //拆零预出库退回 List codeList = codeService.findByOrderId(orderEntity.getBillNo()); fifoInvService.removeInv(codeList, orderEntity.getWorkPlaceCode()); + splitFifoCodeService.updateAllInvAlert(orderEntity.getWorkPlaceCode()); } } } diff --git a/src/main/java/com/glxp/api/service/inout/IoGenInvService.java b/src/main/java/com/glxp/api/service/inout/IoGenInvService.java index 1675880da..8e6eb77c7 100644 --- a/src/main/java/com/glxp/api/service/inout/IoGenInvService.java +++ b/src/main/java/com/glxp/api/service/inout/IoGenInvService.java @@ -135,8 +135,8 @@ public class IoGenInvService { if (bussinessTypeEntity.getActionType() == (ConstantStatus.ACTION_TYPE_NORMAL) //带票(正常) && bussinessTypeEntity.getMainAction().equals(ConstantType.TYPE_PUT) //入库 && bussinessTypeEntity.getDevInType().equals(1) - ) { - deviceChangeOrderService.generateDeviceInfo(orderEntity,codeEnttities); + ) { + deviceChangeOrderService.generateDeviceInfo(orderEntity, codeEnttities); } } 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 90b10b2e4..229f77fe6 100644 --- a/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java @@ -33,6 +33,9 @@ import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; +/** + * 拆零码明细 + */ @Service public class IoSplitCodeService extends ServiceImpl { @@ -82,6 +85,11 @@ public class IoSplitCodeService extends ServiceImpl() + .eq(IoSplitCodeEntity::getCode, code).last("limit 1")); + } + public void splitRemove(IoCollectOrderBiz collectOrderBiz, IoCollectOrder collectOrder, Long putWorkPlaceCode) { //1.按照先进先出原则,查询拆零表,获取拆零表ID List ioSplitCodeEntities = findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), putWorkPlaceCode); diff --git a/src/main/resources/mybatis/mapper/collect/IoCollectOrderCodeManMapper.xml b/src/main/resources/mybatis/mapper/collect/IoCollectOrderCodeManMapper.xml index dddee6f88..203a88349 100644 --- a/src/main/resources/mybatis/mapper/collect/IoCollectOrderCodeManMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoCollectOrderCodeManMapper.xml @@ -28,4 +28,20 @@ group by icocm.id + +