From a0a6738bb832326547fe491abcdef6e19d633d05 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Thu, 17 Oct 2024 22:11:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=87=E8=B4=A7BUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/DistributionStockupAppController.java | 44 +++++++++++-------- 1 file changed, 26 insertions(+), 18 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionStockupAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionStockupAppController.java index 006b75fda..16fe60315 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionStockupAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/api/DistributionStockupAppController.java @@ -122,6 +122,7 @@ public class DistributionStockupAppController extends BladeController { private final BladeRedis redis; private final ITrunklinePackageTrackLogClient trunklinePackageTrackLogClient; private final IDistributionNodeWorkService distributionNodeWorkService; + private final IDistributionDeliveryDetailsService distributionDeliveryDetailsService; /** @@ -721,28 +722,35 @@ public class DistributionStockupAppController extends BladeController { private int judgmentIsStockUp(Long reservationId, Long stockListId, DistributionParcelListEntity distributionParcelListEntity, Long warehouseId, String cargoNumber) { List distributionReservationStocklistEntities = distributionReservationMapper.selectStockListByReservationId(reservationId); + List stockListIds = new ArrayList<>(); if (Func.isNotEmpty(distributionReservationStocklistEntities)) { //查询库存品信息 - List stockListIds = distributionReservationStocklistEntities.stream().map(DistributionReservationStocklistEntity::getStocklistId).collect(Collectors.toList()); - - List stockListEntityList = distributionStockListService.list(Wrappers.query().lambda() - .in(DistributionStockListEntity::getId, stockListIds) - .eq(DistributionStockListEntity::getWarehouseId, warehouseId) - .eq(DistributionStockListEntity::getCargoNumber, cargoNumber) - ); - - boolean isHave = stockListEntityList.stream().map(DistributionStockListEntity::getCargoNumber).anyMatch(s -> s.contains(distributionParcelListEntity.getMaterialCode())); - if (!isHave) { - //判断包件是否属于计划物料信息 - return 1; - } - //判断该库存品包件是否属于计划的批次 - boolean isHaveIncomingBatch = stockListEntityList.stream().map(DistributionStockListEntity::getIncomingBatch).anyMatch(s -> s.contains(distributionParcelListEntity.getOrderCode())); - if (!isHaveIncomingBatch) { - return 2; - } + stockListIds = distributionReservationStocklistEntities.stream().map(DistributionReservationStocklistEntity::getStocklistId).collect(Collectors.toList()); + } + List detailsEntities = distributionDeliveryDetailsService.list(Wrappers.query().lambda() + .eq(DistributionDeliveryDetailsEntity::getBillLadingId, reservationId) + ); + if (!detailsEntities.isEmpty()) { + stockListIds = detailsEntities.stream().map(DistributionDeliveryDetailsEntity::getStockListId).collect(Collectors.toList()); } + List stockListEntityList = distributionStockListService.list(Wrappers.query().lambda() + .in(DistributionStockListEntity::getId, stockListIds) + .eq(DistributionStockListEntity::getWarehouseId, warehouseId) + .eq(DistributionStockListEntity::getCargoNumber, cargoNumber) + ); + + boolean isHave = stockListEntityList.stream().map(DistributionStockListEntity::getCargoNumber).anyMatch(s -> s.contains(distributionParcelListEntity.getMaterialCode())); + if (!isHave) { + //判断包件是否属于计划物料信息 + return 1; + } + //判断该库存品包件是否属于计划的批次 + boolean isHaveIncomingBatch = stockListEntityList.stream().map(DistributionStockListEntity::getIncomingBatch).anyMatch(s -> s.contains(distributionParcelListEntity.getOrderCode())); + if (!isHaveIncomingBatch) { + return 2; + } + return 3; }