From 6ae643f0d455e627b57570c22018db4411432dc6 Mon Sep 17 00:00:00 2001 From: yewj Date: Tue, 8 Apr 2025 10:22:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B1=87=E6=80=BB=E5=8D=95=E6=89=AB=E7=A0=81?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=EF=BC=8C=E4=B8=8E=E5=8D=95=E6=8D=AE=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=E6=A0=A1=E9=AA=8C=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../collect/IoCollectOrderController.java | 109 ++++++++------ .../collect/IoCollectOrderCodeManService.java | 139 +++++------------- .../collect/IoCollectOrderService.java | 17 +++ .../api/service/inout/IoSplitCodeService.java | 7 +- 4 files changed, 117 insertions(+), 155 deletions(-) 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 84764cd42..b6415e5a0 100644 --- a/src/main/java/com/glxp/api/controller/collect/IoCollectOrderController.java +++ b/src/main/java/com/glxp/api/controller/collect/IoCollectOrderController.java @@ -80,9 +80,7 @@ public class IoCollectOrderController extends BaseController { request.setUserId(userId.toString()); page = basicCollectUserService.filterList(request); if (page != null && page.size() > 0) { - workPlaceCodes = page.stream() - .map(UserWorkResponse::getWorkplaceId) - .collect(Collectors.toList()); + workPlaceCodes = page.stream().map(UserWorkResponse::getWorkplaceId).collect(Collectors.toList()); } //通过工位列表 获取出 业务列表 workBindBusTypeRequest.setWorkPlaceCodes(workPlaceCodes); @@ -98,9 +96,7 @@ public class IoCollectOrderController extends BaseController { } if (CollUtil.isNotEmpty(sysWorkplaceDocumentResponses)) { - Set uniqueDocumentTypeCodesLinkedHashSet = sysWorkplaceDocumentResponses.stream() - .map(SysWorkplaceDocumentResponse::getDocumentTypeCode) - .collect(Collectors.toCollection(LinkedHashSet::new)); + Set uniqueDocumentTypeCodesLinkedHashSet = sysWorkplaceDocumentResponses.stream().map(SysWorkplaceDocumentResponse::getDocumentTypeCode).collect(Collectors.toCollection(LinkedHashSet::new)); List documentTypeCodes = new ArrayList<>(uniqueDocumentTypeCodesLinkedHashSet); collectOrderRequest.setDocumentTypeCodes(documentTypeCodes); @@ -128,8 +124,7 @@ public class IoCollectOrderController extends BaseController { request.setBusType(collectOrderRequest.getBusType()); request.setTagStatusList(List.of(1)); List orderResponses = collectOrderService.filterList(request); - if (CollUtil.isNotEmpty(orderResponses)) - return ResultVOUtils.success(orderResponses.get(0)); + if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0)); return ResultVOUtils.error(500, "该工位已无待处理单据"); } @@ -154,20 +149,17 @@ public class IoCollectOrderController extends BaseController { request.setUpdateUser(getUserId()); request.setTagStatus(2); List orderResponses = collectOrderService.filterList(request); - if (CollUtil.isNotEmpty(orderResponses)) - return ResultVOUtils.success(orderResponses.get(0)); + if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0)); else { request.setTagStatus(-1); orderResponses = collectOrderService.filterList(request); - if (CollUtil.isNotEmpty(orderResponses)) - return ResultVOUtils.success(orderResponses.get(0)); + if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0)); else { IoCollectSet collectSet = collectSetService.getSet(); if (IntUtil.value(collectSet.getAutoAllotOrder())) { request.setTagStatus(1); orderResponses = collectOrderService.filterList(request); - if (CollUtil.isNotEmpty(orderResponses)) - return ResultVOUtils.success(orderResponses.get(0)); + if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0)); } } } @@ -192,13 +184,11 @@ public class IoCollectOrderController extends BaseController { request.setLimit(1); request.setBillNo(collectOrderRequest.getBillNo()); List orderResponses = collectOrderService.filterList(request); - if (CollUtil.isNotEmpty(orderResponses)) - return ResultVOUtils.success(orderResponses.get(0)); + if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0)); else { request.setTagStatus(-1); orderResponses = collectOrderService.filterList(request); - if (CollUtil.isNotEmpty(orderResponses)) - return ResultVOUtils.success(orderResponses.get(0)); + if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0)); } return ResultVOUtils.error(500, "未查到待处理单据"); } @@ -214,7 +204,7 @@ public class IoCollectOrderController extends BaseController { return ResultVOUtils.error(500, "未找到单据"); } //如果是 处理单据页面来的 有汇总单号 要走汇总单号 - if (collectOrderBizRequest.getSummaryNoFlag() && StrUtil.isNotEmpty(collectOrder.getSummaryNo())){ + if (collectOrderBizRequest.getSummaryNoFlag() && StrUtil.isNotEmpty(collectOrder.getSummaryNo())) { collectOrderBizRequest.setSummaryNo(collectOrder.getSummaryNo()); List list = collectOrderBizService.filterList(collectOrderBizRequest); PageInfo pageInfo = new PageInfo<>(list); @@ -222,7 +212,7 @@ public class IoCollectOrderController extends BaseController { pageSimpleResponse.setTotal(pageInfo.getTotal()); pageSimpleResponse.setList(list); return ResultVOUtils.success(pageSimpleResponse); - }else { + } else { List list = collectOrderBizService.filterList(collectOrderBizRequest); PageInfo pageInfo = new PageInfo<>(list); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); @@ -345,11 +335,9 @@ public class IoCollectOrderController extends BaseController { BeanUtils.copyProperties(collectOrderRequest, collectOrder); 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())); + boolean update = collectOrderService.update(new LambdaUpdateWrapper().eq(IoCollectOrder::getBillNo, collectOrder.getBillNo()).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)); + collectOrderOriginService.update(new LambdaUpdateWrapper().eq(IoCollectOrderOrigin::getBillNo, collectOrder.getBillNo()).set(IoCollectOrderOrigin::getTagStatus, 2)); } return ResultVOUtils.success(); } @@ -421,31 +409,56 @@ public class IoCollectOrderController extends BaseController { @PostMapping("/udiwms/basic/collect/order/finish") @Transactional(rollbackFor = Exception.class) public BaseResponse saveFinishOrder(@RequestBody CollectOrderRequest collectOrderRequest) { + List billNos = new ArrayList<>(); if (!IntUtil.value(collectOrderRequest.getConfirmFinish())) { //1.校验是否全部自动赋码 CollectOrderBizRequest collectOrderBizRequest = new CollectOrderBizRequest(); collectOrderBizRequest.setOrderIdFk(collectOrderRequest.getBillNo()); - List collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest); + + IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderRequest.getBillNo()); + if (StrUtil.isNotEmpty(collectOrder.getSummaryNo())) { +// collectOrderBizRequest.setSummaryNo(collectOrder.getSummaryNo()); + billNos = collectOrderService.getBillBySummary(collectOrder.getSummaryNo()); + } else { + billNos.add(collectOrderRequest.getBillNo()); + } boolean isAllTag = true; String msg = ""; - if (CollUtil.isNotEmpty(collectOrderBizResponses)) { - for (int i = 0; i < collectOrderBizResponses.size(); i++) { - CollectOrderBizResponse collectOrderBizResponse = collectOrderBizResponses.get(i); - if (!(StrUtil.isNotEmpty(collectOrderBizResponse.getFinishUdiCode()) || collectOrderBizResponse.getAutoTagStatus() == 2)) { - isAllTag = false; - String cpmctymc = collectOrderBizResponse.getCpmctymc(); - Integer count = collectOrderBizResponse.getCount(); - Integer autoResCount = IntUtil.value(collectOrderBizResponse.getAutoResCount()); - msg = msg + " " + cpmctymc + ":未采集数量" + (count - autoResCount) + ";"; + for (String billNo : billNos) { + collectOrderBizRequest.setOrderIdFk(billNo); + List collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest); + + if (CollUtil.isNotEmpty(collectOrderBizResponses)) { + for (int i = 0; i < collectOrderBizResponses.size(); i++) { + CollectOrderBizResponse collectOrderBizResponse = collectOrderBizResponses.get(i); + if (!(StrUtil.isNotEmpty(collectOrderBizResponse.getFinishUdiCode()) || collectOrderBizResponse.getAutoTagStatus() == 2)) { + isAllTag = false; + String cpmctymc = collectOrderBizResponse.getCpmctymc(); + Integer count = collectOrderBizResponse.getCount(); + Integer autoResCount = IntUtil.value(collectOrderBizResponse.getAutoResCount()); + msg = msg + " " + cpmctymc + ":未采集数量" + (count - autoResCount) + ";"; + } } } } - if (!isAllTag) { return ResultVOUtils.error(502, "该业务单据未全部赋码【" + msg.replaceAll(";$", "") + "】,是否强制完成单据?"); } } - collectOrderService.finishOrder(collectOrderRequest, getUser(), false); + + if (CollUtil.isNotEmpty(billNos)) { + List collectOrders = collectOrderService.list(new LambdaQueryWrapper().in(IoCollectOrder::getBillNo, billNos)); + if (CollUtil.isNotEmpty(collectOrders)) { + for (IoCollectOrder collectOrder : collectOrders) { + CollectOrderRequest tempRequest = new CollectOrderRequest(); + BeanUtils.copyProperties(collectOrder, tempRequest); + collectOrderService.finishOrder(tempRequest, getUser(), false); + } + } + } else { + collectOrderService.finishOrder(collectOrderRequest, getUser(), false); + } + return ResultVOUtils.success(); } @@ -459,9 +472,14 @@ public class IoCollectOrderController extends BaseController { if (collectOrderRequest.getIsCheckFinish() != null) { collectOrderBizRequest.setIsOrderCheck(collectOrderRequest.getIsCheckFinish()); } + + + IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderRequest.getBillNo()); + if (StrUtil.isNotEmpty(collectOrder.getSummaryNo())) { + collectOrderBizRequest.setSummaryNo(collectOrder.getSummaryNo()); + } List collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest); - boolean isAllTag = collectOrderBizResponses.stream() - .allMatch(obj -> StrUtil.isNotEmpty(obj.getFinishUdiCode()) || obj.getAutoTagStatus() == 2); + boolean isAllTag = collectOrderBizResponses.stream().allMatch(obj -> StrUtil.isNotEmpty(obj.getFinishUdiCode()) || obj.getAutoTagStatus() == 2); } collectOrderService.finishOrder(collectOrderRequest, getUser(), false); return ResultVOUtils.success(); @@ -486,8 +504,7 @@ public class IoCollectOrderController extends BaseController { if (!IntUtil.value(collectSet.getGetSplitConfirm())) { confirmOrderBiz.setSkipSplitConfirm(true); } - ConfirmResponse splitInfo = splitCodeService.confirmBizAutiTagCode(confirmOrderBiz, confirmOrderBiz.getQueueCode(), - confirmOrderBiz.getConfirmSplitCode(), confirmOrderBiz.getSkipSplitConfirm()); + ConfirmResponse splitInfo = splitCodeService.confirmBizAutiTagCode(confirmOrderBiz, confirmOrderBiz.getQueueCode(), confirmOrderBiz.getConfirmSplitCode(), confirmOrderBiz.getSkipSplitConfirm()); return ResultVOUtils.success(splitInfo); } @@ -504,8 +521,7 @@ public class IoCollectOrderController extends BaseController { return ResultVOUtils.error(500, "单据号不能为空!"); } List collectOrderBizs = collectOrderBizService.listByBillNo(collectOrderRequest.getBillNo()); - boolean allConfirmed = CollUtil.isNotEmpty(collectOrderBizs) && - collectOrderBizs.stream().allMatch(biz -> IntUtil.value(biz.getGetConfirm())); + boolean allConfirmed = CollUtil.isNotEmpty(collectOrderBizs) && collectOrderBizs.stream().allMatch(biz -> IntUtil.value(biz.getGetConfirm())); if (allConfirmed) { collectOrderService.confirmFinishOrder(collectOrderRequest, getUser()); return ResultVOUtils.success("单据完成!"); @@ -521,16 +537,13 @@ public class IoCollectOrderController extends BaseController { */ @PostMapping("/udiwms/basic/collect/order/vailFinish") public BaseResponse vailOrderFinish(@RequestBody CollectOrderRequest collectOrderRequest) { - if (StrUtil.isEmpty(collectOrderRequest.getBillNo())) - return ResultVOUtils.error(500, "单据号不能为空!"); + if (StrUtil.isEmpty(collectOrderRequest.getBillNo())) return ResultVOUtils.error(500, "单据号不能为空!"); CollectOrderBizRequest collectOrderBizRequest = new CollectOrderBizRequest(); collectOrderBizRequest.setOrderIdFk(collectOrderRequest.getBillNo()); List collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest); - boolean isAllTag = collectOrderBizResponses.stream() - .allMatch(obj -> obj.getAutoTagStatus() == 2); + boolean isAllTag = collectOrderBizResponses.stream().allMatch(obj -> obj.getAutoTagStatus() == 2); - boolean isAllTag2 = collectOrderBizResponses.stream() - .allMatch(obj -> IntUtil.value(obj.getScanActCount()) >= IntUtil.value(obj.getCount())); + boolean isAllTag2 = collectOrderBizResponses.stream().allMatch(obj -> IntUtil.value(obj.getScanActCount()) >= IntUtil.value(obj.getCount())); return ResultVOUtils.success(isAllTag || isAllTag2); } 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 0a29a4a87..3457be726 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOrderCodeManService.java @@ -61,6 +61,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; @Service public class IoCollectOrderCodeManService extends ServiceImpl { @@ -116,14 +117,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl listByBillNo(String billNo) { - return collectOrderCodeManMapper.selectList(new LambdaQueryWrapper() - .eq(IoCollectOrderCodeMan::getOrderIdFk, billNo)); + return collectOrderCodeManMapper.selectList(new LambdaQueryWrapper().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo)); } public IoCollectOrderCodeMan findByCode(String billNo, String code) { - return collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo) - .eq(IoCollectOrderCodeMan::getUdiCode, code).last("limit 1")); + return collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo).eq(IoCollectOrderCodeMan::getUdiCode, code).last("limit 1")); } @Resource @@ -141,18 +140,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl ioCollectCodeResponses = ioCollectCodeBackService.filterList(ioCollectCodeRequest); - if (ioCollectCodeResponses.size() == 0){ + if (ioCollectCodeResponses.size() == 0) { throw new JsonException(500, "当前追溯码非原始处方追溯码"); } IoCollectCodeResponse ioCollectCodeResponse = ioCollectCodeResponses.get(0); @@ -209,7 +201,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl collectOrderBizs = collectOrderBizService.listByBillNo(addTagCodeReqeust.getBillNo()); + List collectOrderBizs; + collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo()); + if (StrUtil.isNotEmpty(collectOrder.getSummaryNo())) { + collectOrderBizs = collectOrderService.getOrderBizs(collectOrder.getSummaryNo()); + } else { + collectOrderBizs = collectOrderBizService.listByBillNo(addTagCodeReqeust.getBillNo()); + } //2.校验是否处方单UDI码 if (IntUtil.value(sysWorkplaceDocumentEntity.getScanType()) == WorkOperType.TYPE_GEN_ORDER) { if (StrUtil.isEmpty(addTagCodeReqeust.getBillNo())) { String orderNo = gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SPLIT_ORDER, "yyyyMMdd")); - collectOrder = IoCollectOrder.builder() - .billNo(orderNo) - .busType(sysWorkplaceDocumentEntity.getDocumentTypeCode()) - .fromCorp(addTagCodeReqeust.getFromCorp()) - .fromCorpName(addTagCodeReqeust.getFromCorpName()) - .billTime(new Date()) - .workPlaceCode(workPlace.getWorkplaceId()) - .createTime(new Date()) - .createUser(userIds) - .shipper(addTagCodeReqeust.getInvCode()) - .updateTime(new Date()) - .orderCirType(sysWorkplaceDocumentEntity.getOrderCirType()) - .tagStatus(1) - .build(); + collectOrder = IoCollectOrder.builder().billNo(orderNo).busType(sysWorkplaceDocumentEntity.getDocumentTypeCode()).fromCorp(addTagCodeReqeust.getFromCorp()).fromCorpName(addTagCodeReqeust.getFromCorpName()).billTime(new Date()).workPlaceCode(workPlace.getWorkplaceId()).createTime(new Date()).createUser(userIds).shipper(addTagCodeReqeust.getInvCode()).updateTime(new Date()).orderCirType(sysWorkplaceDocumentEntity.getOrderCirType()).tagStatus(1).build(); if (StrUtil.isNotEmpty(addTagCodeReqeust.getShipper())) { collectOrder.setShipper(addTagCodeReqeust.getShipper()); collectOrder.setShipperName(addTagCodeReqeust.getShipperName()); @@ -300,8 +285,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl() - .eq(ThrBusTypeOriginEntity::getAction, sysWorkplaceDocumentEntity.getDocumentTypeCode())); + ThrBusTypeOriginEntity one = thrBusTypeOriginService.getOne(new LambdaQueryWrapper().eq(ThrBusTypeOriginEntity::getAction, sysWorkplaceDocumentEntity.getDocumentTypeCode())); if (one != null) { ThrSystemEntity thrSystemEntity = thrSystemService.getOne(new LambdaQueryWrapper().eq(ThrSystemEntity::getThirdId, one.getThirdSys())); if (thrSystemEntity != null) { @@ -321,8 +305,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl IntUtil.value(collectOrderBiz.getCount())) { int needCount = IntUtil.value(collectOrderBiz.getCount()) - IntUtil.value(collectOrderBiz.getScanActCount()); if (needCount > 0) { @@ -546,26 +526,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getUdiCode, relCodeDetail.getParentCode())); } } - if (ret) - return true; + if (ret) return true; //若父码不存在,判断当前单号是否存在当前码的子码,若存在则表示存在关联关系重复扫码 ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getParentCode, code)); if (!ret) { @@ -632,9 +596,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl udiRelevanceResponses, List collectOrderBizs, UdiEntity udiEntity, IoCollectOrder collectOrder) { for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses) { for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) { - if (udiRelevanceResponse.getId().equals(collectOrderBiz.getRelId()) && - (StrUtil.trimToEmpty(collectOrderBiz.getBatchNo()).equals(StrUtil.trimToEmpty(udiEntity.getBatchNo()))) - ) { + if (udiRelevanceResponse.getId().equals(collectOrderBiz.getRelId()) && (StrUtil.trimToEmpty(collectOrderBiz.getBatchNo()).equals(StrUtil.trimToEmpty(udiEntity.getBatchNo())))) { int actCount = 0; if (IntUtil.value(collectOrder.getOrderCirType()) == 1) { actCount = +calCountUtil.getCirActCount(udiRelevanceResponse); @@ -659,30 +621,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl() - .eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk()) - .eq(IoCollectOrderCodeMan::getUdiCode, request.getUdiCode())); + IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper().eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk()).eq(IoCollectOrderCodeMan::getUdiCode, request.getUdiCode())); if (ioCollectOrderCodeMan == null) { BaseResponse response = new BaseResponse(); response.setData(request.getUdiCode()); @@ -782,9 +717,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl vailCodeResultResponses = new ArrayList<>(); for (String code : request.getUdiCodeList()) { - IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper() - .eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk()) - .eq(IoCollectOrderCodeMan::getUdiCode, code)); + IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper().eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk()).eq(IoCollectOrderCodeMan::getUdiCode, code)); VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse(); if (ioCollectOrderCodeMan != null) { vailCodeResultResponse.setStatus(1); @@ -823,13 +756,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl combieOrderDetail(CollectOrderBizRequest collectOrderBizRequest) { + List list = collectOrderBizService.filterList(collectOrderBizRequest); List splitCodes = collectOrderCodeAutoService.listByBillNo(collectOrderBizRequest.getOrderIdFk(), 1); @@ -1012,4 +1013,20 @@ public class IoCollectOrderService extends ServiceImpl(summarizedMap.values()); } + + + public List getBillBySummary(String summaryNo) { + List billNos = listObjs(new LambdaQueryWrapper().select(IoCollectOrder::getBillNo).eq(IoCollectOrder::getSummaryNo, summaryNo), Object::toString); + return billNos; + } + + + public List getOrderBizs(String summaryNo) { + List collectOrderBizs = null; + List billNos = getBillBySummary(summaryNo); + if (CollUtil.isNotEmpty(billNos)) { + collectOrderBizs = collectOrderBizService.list(new LambdaQueryWrapper().in(IoCollectOrderBiz::getOrderIdFk, billNos)); + } + return collectOrderBizs; + } } 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 6ac79d7f5..1f6da564f 100644 --- a/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoSplitCodeService.java @@ -208,8 +208,8 @@ public class IoSplitCodeService extends ServiceImpl collectOrderBizs = collectOrderBizService.listByBillNo(collectOrder.getBillNo()); - + List collectOrderBizs = null; + collectOrderBizs = collectOrderBizService.listByBillNo(collectOrder.getBillNo()); //如果手动扫码判断该码是否在队列里,如果已在队列,则队列里剔除 List collectOrderCodeMEN = collectOrderCodeManService.listByBillNo(collectOrder.getBillNo()); if (CollUtil.isNotEmpty(collectOrderCodeMEN)) { @@ -595,7 +595,8 @@ public class IoSplitCodeService extends ServiceImpl 0) { count = IntUtil.value(ioSplitCodeEntity.getRemainCount()) - unCount; - IoCollectOrderCodeAuto collectOrderCodeAuto = IoCollectOrderCodeAuto.builder().codeIdFk(ioSplitCodeEntity.getId()).udiCode(ioSplitCodeEntity.getCode()).orderIdFk(collectOrder.getBillNo()).batchNo(ioSplitCodeEntity.getBatchNo()).productDate(ioSplitCodeEntity.getProduceDate()).expireDate(ioSplitCodeEntity.getExpireDate()).serialNo(ioSplitCodeEntity.getSerialNo()).relId(collectOrderBiz.getRelId()).bizIdFk(collectOrderBiz.getId()).fifoSplit(count > 0 ? count : 0).reCount(count).createTime(new Date()).updateTime(new Date()).build(); + IoCollectOrderCodeAuto collectOrderCodeAuto = IoCollectOrderCodeAuto.builder().codeIdFk(ioSplitCodeEntity.getId()).udiCode(ioSplitCodeEntity.getCode()).orderIdFk(collectOrder.getBillNo()).batchNo(ioSplitCodeEntity.getBatchNo()).productDate(ioSplitCodeEntity.getProduceDate()).expireDate(ioSplitCodeEntity.getExpireDate()).serialNo(ioSplitCodeEntity.getSerialNo()).relId(collectOrderBiz.getRelId()).bizIdFk(collectOrderBiz.getId()) + .fifoSplit(1).reCount(count > 0 ? count : 0).createTime(new Date()).updateTime(new Date()).build(); collectOrderCodeAutoService.save(collectOrderCodeAuto); codeAutoList.add(collectOrderCodeAuto); if (count > 0) {