diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java index 56898a227..bb40a8b14 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java @@ -5414,22 +5414,24 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl>>>>>>>>>>>>>>>>>>开始批量装车:{}", distributionSignforEntity.getDeliveryId()); - if (!packageLoadingData.isEmpty()) { - log.info(">>>>>>>>>>>>>>>>>>>开始批量装车,处理装车包件:{}", distributionSignforEntity.getDeliveryId()); + int signNum = 0; + if (!packageLoadingData.isEmpty()) { + signNum += packageLoadingData.stream().mapToInt(DistributionLoadscanEntity::getReceivedQuantity).sum(); + receivedQuantity += packageLoadingData.stream().mapToInt(DistributionLoadscanEntity::getPackageNub).sum(); + //进行订制品和零担的批量签收 + handlePackageLoadingData(packageLoadingData, user, distributionLoadscanEntityLists, orderCodes); + } - receivedQuantity += packageLoadingData.stream().mapToInt(DistributionLoadscanEntity::getPackageNub).sum(); - //进行订制品和零担的批量签收 - handlePackageLoadingData(packageLoadingData, user, distributionLoadscanEntityLists, orderCodes); - } + if (!inventoryLoadingData.isEmpty()) { + signNum += inventoryLoadingData.stream().mapToInt(DistributionLoadscaninvnEntity::getReceivedQuantity).sum(); + receivedinQuantity += inventoryLoadingData.stream().mapToInt(DistributionLoadscaninvnEntity::getPackageNub).sum(); + //进行订制品和零担的批量签收 + handleInventoryLoadingData(inventoryLoadingData, user, distributionLoadscaninvnEntityLists); + } + if (signNum > 0){ + distributionSignforMapper.deductionSignforPacjageNum(distributionSignforEntity.getDeliveryId(), distributionSignforEntity.getReservationId(), signNum); + } - if (!inventoryLoadingData.isEmpty()) { - log.info(">>>>>>>>>>>>>>>>>>>开始批量装车,处理装车库存品:{}", distributionSignforEntity.getDeliveryId()); - receivedinQuantity += inventoryLoadingData.stream().mapToInt(DistributionLoadscaninvnEntity::getPackageNub).sum(); - //进行订制品和零担的批量签收 - handleInventoryLoadingData(inventoryLoadingData, user, distributionLoadscaninvnEntityLists); - } - log.info(">>>>>>>>>>>>>>>>>>>开始处理批量装车完毕:{}", distributionSignforEntity.getDeliveryId()); //维护签收数量 distributionSignforEntity.setReceivedinQuantity(receivedinQuantity); distributionSignforEntity.setReceivedQuantity(receivedQuantity); @@ -5881,7 +5883,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildNodeFanoutMsgByOneClick(distributionDeliveryListEntity, reservationEntity, distributionLoadscaninvnEntityLists, distributionLoadscanEntityLists); iDistributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); - return Resp.scanSuccess((distributionSignforEntity.getReceivedinQuantity()+distributionSignforEntity.getReceivedQuantity())+"件",(distributionSignforEntity.getReceivedinQuantity()+distributionSignforEntity.getReceivedQuantity())+"件"); + return Resp.scanSuccess((distributionSignforEntity.getReceivedinQuantity() + distributionSignforEntity.getReceivedQuantity()) + "件", (distributionSignforEntity.getReceivedinQuantity() + distributionSignforEntity.getReceivedQuantity()) + "件"); } private DistributionDeliverySelfEntity getDriver(DistributionDeliveryListEntity distributionDeliveryListEntity, BladeUser user, Boolean isDriverFlag) { @@ -5947,10 +5949,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl updatePackageLoadingData = new ArrayList<>(); List packageIds = new ArrayList<>(); for (DistributionLoadscanEntity packageLoadingDatum : packageLoadingData) { - if ((packageLoadingDatum.getLoadedNub() - packageLoadingDatum.getReceivedQuantity()) > 0) { - //存在装车和签收数量不一致,回退签收数量 - distributionSignforMapper.deductionSignforPacjageNum(packageLoadingDatum.getDeliveryId(), packageLoadingDatum.getReservationId(), packageLoadingDatum.getReceivedQuantity()); - } packageLoadingDatum.setReceivedQuantity(packageLoadingDatum.getLoadedNub()); packageLoadingDatum.setSignforType(LoadScanSigningTypeStatusConstant.sijipiliangqianshou.getValue()); packageLoadingDatum.setOneClick(LoadScanSigningTypeStatusConstant.sijipiliangqianshou.getValue());