From 299914112590ca88a13ba7090cd6ec25235da9c0 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Wed, 3 Apr 2024 17:44:33 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E6=8F=90BUG=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E3=80=81=E9=A2=84=E7=BA=A6redis=E8=B5=84=E6=BA=90=E9=87=8A?= =?UTF-8?q?=E6=94=BEBUG=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vo/DistributionStockArticleVO.java | 6 ++ .../DistributionDeliveryListServiceImpl.java | 7 +- .../DistrilbutionBillLadingServiceImpl.java | 68 ++++++++++++++++--- 3 files changed, 70 insertions(+), 11 deletions(-) diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java index 38b791adb..3db2ab7bb 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockArticleVO.java @@ -141,6 +141,12 @@ public class DistributionStockArticleVO extends DistributionStockArticleEntity { @ApiModelProperty(value = "签收数量") private Integer signingNumber; + /** + * 计划数量 + */ + @ApiModelProperty(value = "计划数量") + private Integer reservationNum; + /** * 备货数量 */ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 17009d351..4959282d5 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -4643,13 +4643,18 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl distributionSignforEntities = distributionSignforServicer.getBaseMapper().selectList(Wrappers.query().lambda().eq(DistributionSignforEntity::getDeliveryId, deliveryListEntity.getId())); + BladeUser user = AuthUtil.getUser(); distributionSignforEntities.forEach(s -> { //2、将预约计划进行确认状态的回滚 // DistributionReservationEntity reservationEntity = distributionReservationMapper.selectById(s.getReservationId()); - DistributionReservationEntity reservationEntity = distributionReservationMapper.selectOne(Wrappers.query().lambda().eq(DistributionReservationEntity::getId, s.getReservationId()).ne(DistributionReservationEntity::getReservationStatus, ReservationStatusConstant.yiquexiao.getValue())); + DistributionReservationEntity reservationEntity = distributionReservationMapper.selectOne(Wrappers.query().lambda() + .eq(DistributionReservationEntity::getId, s.getReservationId()) + .ne(DistributionReservationEntity::getReservationStatus, ReservationStatusConstant.yiquexiao.getValue()) + ); reservationEntity.setReservationStatus(ReservationStatusConstant.yiqueren.getValue()); reservationEntity.setLoadingStatus(ReservationLoadingStatusConstant.daizhuangche.getValue()); distributionReservationMapper.updateById(reservationEntity); + bladeRedis.del(user.getTenantId()+":"+ ModuleNameConstant.APPLICATION_DISTRIBUTION_NAME+":reservationLock"+reservationEntity.getReservationCode()); //将该预约下的所有包件信息进行修改为初始预约状态 List reservationStockarticleEntityList = distributionReservationStockarticleMapper.selectList(Wrappers.query().lambda().eq(DistributionReservationStockarticleEntity::getReservationId, reservationEntity.getId()).ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue())); reservationStockarticleEntityList.forEach(o -> { diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java index 55ff8013f..9d6d0c63c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java @@ -225,13 +225,13 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list = distributionDeliveryDetailsService.list(Wrappers.query().lambda() .eq(DistributionDeliveryDetailsEntity::getBillLadingId, distrilbutionBillLading.getId()) - .apply("inventory_status in ( 1 , 2)") + .apply("inventory_status in ( 1 , 3)") ); List stockEntityList = new ArrayList<>(); List dd = new ArrayList<>(); if (!list.isEmpty()) { list.forEach(i -> { - if ("2".equals(i.getConditions())) { + if ("20".equals(i.getConditions())) { throw new ServiceException("包含已提货的库存品,无法取消!!!"); } if ("1".equals(i.getStockStatus())) { @@ -249,7 +249,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.in(DistributionDeliveryDetailsEntity::getId, dd); - updateWrapper.set(DistributionDeliveryDetailsEntity::getInventoryStatus, "3"); + updateWrapper.set(DistributionDeliveryDetailsEntity::getInventoryStatus, "2"); distributionDeliveryDetailsService.update(updateWrapper); } //修改库存品数据 @@ -363,6 +363,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl { boolean b = distrilbutionBillLading.getStockDTOList().stream().anyMatch(a -> i.getStockListId().equals(a.getId())); + //查询是否存签收扫描数量 List list1 = distributionStockService.list(Wrappers.query().lambda() .eq(DistributionStockEntity::getBillLadingId, distrilbutionBillLading.getId()) .eq(DistributionStockEntity::getStockListId, i.getStockListId()) @@ -370,6 +371,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl iterator = distrilbutionBillLading.getStockDTOList().iterator(); @@ -389,7 +391,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl { DistributionDeliveryDetailsEntity deliveryDetails = new DistributionDeliveryDetailsEntity(); deliveryDetails.setId(a); - deliveryDetails.setInventoryStatus("3"); + deliveryDetails.setInventoryStatus("2"); distributionDeliveryDetailsService.updateById(deliveryDetails); }); } @@ -1194,6 +1196,10 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl ids = null; + List stockArticleList = distrilbutionBillLadingDTO.getStockArticleList(); + Map> collect = stockArticleList.stream().collect(Collectors.groupingBy(DistributionStockArticleEntity::getId)); + List parcelLisList = distrilbutionBillLadingDTO.getParcelLisList();//品类信息 if (!list.isEmpty()) { List longs = new ArrayList<>(); @@ -1212,6 +1218,10 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl 0) { //减少了 @@ -1234,8 +1244,13 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl distributionStockArticleEntities = collect.get(i.getStockArticleId()); + if (distributionStockArticleEntities.isEmpty()){ + longs.add(i.getParcelListId()); + } + } } }); if (!longs.isEmpty()) { @@ -1960,12 +1975,44 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list = distrilbutionBillStockService.list(Wrappers.query().lambda() .eq(DistrilbutionBillStockEntity::getBillLadingId, distrilbutionBillLadingEntity.getId()) .eq(DistrilbutionBillStockEntity::getOrderStatus, "1") - .or(eq -> eq.eq(DistrilbutionBillStockEntity::getBillLadingId, distrilbutionBillLadingEntity.getId()).eq(DistrilbutionBillStockEntity::getOrderStatus, "2")) + .or(eq -> eq.eq(DistrilbutionBillStockEntity::getBillLadingId, distrilbutionBillLadingEntity.getId()).eq(DistrilbutionBillStockEntity::getOrderStatus, "3")) ); list.forEach(i -> { List list2 = distributionStockArticleService.list(Wrappers.query().lambda().eq(DistributionStockArticleEntity::getId, i.getStockArticleId())); if (!list2.isEmpty()) { - list1.addAll(DistributionStockArticleWrapper.build().listVO(list2)); + List distributionStockArticleVOS = DistributionStockArticleWrapper.build().listVO(list2); + for (DistributionStockArticleVO distributionStockArticleVO : distributionStockArticleVOS) { + //查询自身订单的计划数量是多少 + if (IsOrNoConstant.no.getValue().equals(distributionStockArticleVO.getIsZero())){ + //查询订制品数量 + List list3 = distrilbutionBillPackageService.list(Wrappers.query().lambda() + .eq(DistrilbutionBillPackageEntity::getBillLadingId, distrilbutionBillLadingEntity.getId()) + .ne(DistrilbutionBillPackageEntity::getPacketBarStatus, "2") + .ne(DistrilbutionBillPackageEntity::getStockArticleId, distributionStockArticleVO.getId()) + ); + if (!list3.isEmpty()){ + distributionStockArticleVO.setReservationNum(list3.size()); + }else { + distributionStockArticleVO.setReservationNum(0); + + } + }else { + List reservationZeroPackageEntities = distributionZeroPackageService.list(Wrappers.query().lambda() + .eq(DistributionReservationZeroPackageEntity::getReservationId, distrilbutionBillLadingEntity.getId()) + .eq(DistributionReservationZeroPackageEntity::getStockArticleId, distributionStockArticleVO.getId()) + .ne(DistributionReservationZeroPackageEntity::getZeroPackageStatus, "2") + .eq(DistributionReservationZeroPackageEntity::getType, "3") + ); + if (!reservationZeroPackageEntities.isEmpty()){ + distributionStockArticleVO.setReservationNum(reservationZeroPackageEntities.stream().mapToInt(DistributionReservationZeroPackageEntity::getQuantity).sum()); + }else { + distributionStockArticleVO.setReservationNum(0); + + } + } + } + + list1.addAll(distributionStockArticleVOS); } }); @@ -1978,6 +2025,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list3 = distributionDeliveryDetailsService.list(Wrappers.query().lambda() .eq(DistributionDeliveryDetailsEntity::getBillLadingId, distrilbutionBillLadingEntity.getId()) + .ne(DistributionDeliveryDetailsEntity::getInventoryStatus, "2") ); if (!list3.isEmpty()) { list3.forEach(i -> {