From 5e2638f4cab3c36ded088b57948fa89be3891b48 Mon Sep 17 00:00:00 2001 From: yewj Date: Fri, 6 Sep 2024 11:22:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=86=E9=9B=B6=E9=80=BB=E8=BE=91=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../collect/IoCollectOrderCodeManService.java | 48 ++++++++++++++++--- .../api/service/inout/IoSplitCodeService.java | 16 ++++--- 2 files changed, 52 insertions(+), 12 deletions(-) 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 b2d00bf9a..e058cb146 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java @@ -19,6 +19,7 @@ import com.glxp.api.entity.basic.UdiEntity; import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrderBiz; import com.glxp.api.entity.collect.IoCollectOrderCodeAuto; +import com.glxp.api.entity.inout.IoSplitCodeEntity; import com.glxp.api.entity.thrsys.ThrBusTypeOriginEntity; import com.glxp.api.entity.thrsys.ThrSystemEntity; import com.glxp.api.exception.JsonException; @@ -33,6 +34,7 @@ import com.glxp.api.service.auth.SysWorkplaceService; import com.glxp.api.service.basic.BasicCollectBustypeService; import com.glxp.api.service.basic.SysWorkplaceDocumentService; import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.inout.IoSplitCodeService; import com.glxp.api.service.thrsys.IThrBusTypeOriginService; import com.glxp.api.service.thrsys.ThrSystemService; import com.glxp.api.util.GennerOrderUtils; @@ -207,6 +209,13 @@ public class IoCollectOrderCodeManService extends ServiceImpl IntUtil.value(collectOrderBiz.getCount())) { + + int needCount = IntUtil.value(collectOrderBiz.getCount()) - IntUtil.value(collectOrderBiz.getScanActCount()); + if (needCount > 0) { + if (vailInSplit(collectOrderBiz, collectOrder.getWorkPlaceCode(), needCount)) { + throw new JsonException(502, "当前拆零数量还有剩余,是否继续扫码?"); + } + } throw new JsonException(500, "扫码数量超出!"); } collectOrderBiz.setScanCount(count); @@ -224,6 +233,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl collectOrderBiz.getCount()) { + int needCount = IntUtil.value(collectOrderBiz.getCount()) - IntUtil.value(collectOrderBiz.getScanActCount()); + if (needCount > 0) { + if (vailInSplit(collectOrderBiz, collectOrder.getWorkPlaceCode(), needCount)) { + throw new JsonException(502, "当前拆零数量还有剩余,是否继续扫码?"); + } + } throw new JsonException(502, "扫码数量超出!"); } collectOrderBiz.setScanCount(count1); @@ -252,12 +267,6 @@ public class IoCollectOrderCodeManService extends ServiceImpl IntUtil.value(collectOrderBiz.getCount())) { + int needCount = IntUtil.value(collectOrderBiz.getCount()) - IntUtil.value(collectOrderBiz.getScanActCount()); + if (needCount > 0) { + if (vailInSplit(collectOrderBiz, collectOrder.getWorkPlaceCode(), needCount)) { + throw new JsonException(502, "当前拆零数量还有剩余,是否继续扫码?"); + } + } throw new JsonException(500, "扫码数量超出!"); } collectOrderBiz.setScanCount(count); @@ -304,6 +319,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl collectOrderBiz.getCount()) { + int needCount = IntUtil.value(collectOrderBiz.getCount()) - IntUtil.value(collectOrderBiz.getScanActCount()); + if (needCount > 0) { + if (vailInSplit(collectOrderBiz, collectOrder.getWorkPlaceCode(), needCount)) { + throw new JsonException(502, "当前拆零数量还有剩余,是否继续扫码?"); + } + } throw new JsonException(502, "扫码数量超出!"); } collectOrderBiz.setScanCount(count1); @@ -359,6 +380,21 @@ public class IoCollectOrderCodeManService extends ServiceImpl ioSplitCodeEntities = splitCodeService.findSplitCodes(collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo(), workPlaceCode); + for (IoSplitCodeEntity ioSplitCodeEntity : ioSplitCodeEntities) { + if (IntUtil.value(ioSplitCodeEntity.getRemainCount()) > needCount) { + return true; + } + } + return false; + } public IoCollectOrderBiz scanGenOrder(List udiRelevanceResponses, List collectOrderBizs, UdiEntity udiEntity, IoCollectOrder collectOrder) { for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses) { 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 824266925..1d930b02a 100644 --- a/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java @@ -389,7 +389,8 @@ public class IoSplitCodeService extends ServiceImpl 0 ? lockCount : 0); splitFifoInv.setReCount(IntUtil.value(splitFifoInv.getInCount()) - IntUtil.value(splitFifoInv.getOutCount())); splitFifoInv.setAvailableCount(IntUtil.value(splitFifoInv.getInCount()) - IntUtil.value(splitFifoInv.getLockCount()) - IntUtil.value(splitFifoInv.getOutCount())); splitFifoInvService.updateById(splitFifoInv); @@ -432,7 +433,7 @@ public class IoSplitCodeService extends ServiceImpl -unTagCount) { Optional firstMatch = collectOrderCodeMEN.stream() - .filter(item -> !IntUtil.value(item.getRemoveFlag())) + .filter(item -> IntUtil.value(item.getRemoveFlag())) .findFirst(); if (firstMatch.isPresent()) { IoCollectOrderCodeMan result = firstMatch.get(); @@ -498,7 +499,6 @@ public class IoSplitCodeService extends ServiceImpl splitFifoCodeEntities = splitFifoCodeService.findByRelId(collectOrder.getWorkPlaceCode(), collectOrder.getBusType(), collectOrderBiz.getRelId(), collectOrderBiz.getBatchNo()); - int total = splitFifoCodeEntities.stream() .mapToInt(IoSplitFifoCodeEntity::getTotalCount) .sum(); - //todo 拆零表里取数据 + + List splitCodeEntities = splitCodeService.findSplitCodes(collectOrderBiz.getRelId() + , collectOrderBiz.getBatchNo(), collectOrder.getWorkPlaceCode()); + int splitTotal = splitCodeEntities.stream() + .mapToInt(IoSplitCodeEntity::getRemainCount) + .sum(); + total = total + splitTotal; if (total >= IntUtil.value(collectOrderBiz.getCount())) { collectOrderBiz.setAutoTagStatus(2); } else if (total > 0) { @@ -522,7 +527,6 @@ public class IoSplitCodeService extends ServiceImpl