From a85659e1c2e6f5eeb32932686b03276660cfafc2 Mon Sep 17 00:00:00 2001 From: PigBaoBei <2739175034@qq.com> Date: Thu, 25 Jul 2024 15:22:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E6=8F=90=E9=9B=B6=E6=8B=85BUG?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/ModuleNameConstant.java | 2 +- .../mapper/DistrilbutionBillStockMapper.xml | 3 + .../impl/DistributionAddvalueServiceImpl.java | 64 +++---- .../DistrilbutionBillLadingServiceImpl.java | 164 +++++++++--------- 4 files changed, 118 insertions(+), 115 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java index d60420fe5..f8d462699 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/ModuleNameConstant.java @@ -9,7 +9,7 @@ public interface ModuleNameConstant { /** * 如果不需要 "" */ - public static final String DEVAUTH =""; + public static final String DEVAUTH ="-tjj"; /** * 工厂对接服务名称 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml index cdd3f2d37..afe056c7f 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml @@ -471,6 +471,9 @@ LEFT JOIN logpm_distribution_stock lds on lds.stock_article = ldbs.stock_article_id AND ldbl.id = lds.bill_lading_id WHERE ldbs.is_deleted = 0 and ldbs.bill_lading_id = #{id} and ldbs.order_status in (1,3) + GROUP BY + ldsa.id + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java index befdcde6c..4ff506d1c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAddvalueServiceImpl.java @@ -397,7 +397,11 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); + List packageEntityList = new ArrayList<>(); + + if (!Func.isEmpty(distributionAppAddvalueDTO.getPackageEntityList())){ + packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); + } //查询是否重复添加 DistributionAddvalueEntity addvalueEntity = distributionAddvalueMapper.selectOne(Wrappers.query().lambda() @@ -409,11 +413,6 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl addValueDTO = new HashMap<>(); addValueDTO.put("reservationId",distributionAppAddvalueDTO.getReservationId().toString()); @@ -467,7 +466,7 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl specialCarList = distributionSignforService.checkAddValuePCPackageList(distributionAppAddvalueDTO.getReservationId()); if (!Func.isEmpty(specialCarList)){ @@ -612,8 +611,9 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl{ - totalFee.add(p.getFee()); + finalTotalFee.add(p.getFee()); }); distributionAddvalueDetailEntity.setFee(totalFee); distributionAddvalueDetailService.updateById(distributionAddvalueDetailEntity); @@ -710,6 +710,10 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl { p.setRecordType("1"); + //进行客户信息完善 + + + }); } if (Func.isNotEmpty(zeroPackageList)) { @@ -717,18 +721,6 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl entityList = null; -// if (Func.isNotEmpty(packageEntityList)) { -// entityList = parcelListEntities.stream().filter(p1 -> packageEntityList.stream().noneMatch(p2 -> p2.equals(p1.getId()))).collect(Collectors.toList()); -// if (Func.isEmpty(entityList)) { -// log.error("################该客户下库存品包件信息:{}", detailEntities); -// log.error("################该客户下包件信息:{}", parcelListEntities); -// } -// } else { -// entityList = parcelListEntities; -// } - - return parcelListEntities; } @@ -942,25 +934,33 @@ public class DistributionAddvalueServiceImpl extends BaseServiceImpl newFee = new AtomicReference<>(BigDecimal.ZERO); List packageIds = packageEntityList.stream().map(DistributionAddvaluePackageDTO::getPackageId).collect(Collectors.toList()); - packageEntityList.forEach(p->{ - newFee.set(distributionAddvalueDetailEntity.getFee().subtract(p.getUnitPrice())); - - }); +// packageEntityList.forEach(p->{ +// newFee.set(distributionAddvalueDetailEntity.getFee().subtract(p.getUnitPrice())); +// +// }); List addvaluePackageEntities = distributionAddvaluePackageMapper.selectList(Wrappers.query().lambda() .eq(DistributionAddvaluePackageEntity::getReservationId, distributionAppAddvalueDTO.getReservationId()) .eq(DistributionAddvaluePackageEntity::getAddvalueDetailId, distributionAppAddvalueDTO.getAddvalueDetailId()) ); + if (!addvaluePackageEntities.isEmpty()) { + List entityList = addvaluePackageEntities.stream().filter(f -> packageIds.contains(f.getPackageId())).collect(Collectors.toList()); + entityList.forEach(l->{ + newFee.set(distributionAddvalueDetailEntity.getFee().subtract(l.getUnitPrice())); + + }); + } + + int sum = packageEntityList.stream().mapToInt(DistributionAddvaluePackageEntity::getQuantity).sum(); + //维护详情的件数和金额 + distributionAddvalueDetailEntity.setFee(newFee.get()); + distributionAddvalueDetailEntity.setNum(distributionAddvalueDetailEntity.getNum() - sum); + distributionAddvalueDetailMapper.updateById(distributionAddvalueDetailEntity); + if (Objects.equals(packageIds.size(),addvaluePackageEntities.size())){ //此增值服务项进行全部取消 //这里就需要对整个增值服务项进行删除 distributionAddvalueDetailMapper.deleteAddvalueDetailById(distributionAppAddvalueDTO.getAddvalueDetailId()); distributionAddvalueMapper.deleteAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); - }else { - int sum = packageEntityList.stream().mapToInt(DistributionAddvaluePackageEntity::getQuantity).sum(); - //维护详情的件数和金额 - distributionAddvalueDetailEntity.setFee(newFee.get()); - distributionAddvalueDetailEntity.setNum(distributionAddvalueDetailEntity.getNum() - sum); - distributionAddvalueDetailMapper.updateById(distributionAddvalueDetailEntity); } //查看取消增值服务的保健是否存在该项增值服务中,存在才能继续执行 boolean isExistence = packageIds.stream().allMatch(id -> addvaluePackageEntities.stream().map(DistributionAddvaluePackageEntity::getPackageId).collect(Collectors.toList()).contains(id)); 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 0cc97e1ee..f99ae2d63 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 @@ -217,8 +217,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl selectDistrilbutionBillLadingPage(IPage page, DistrilbutionBillLadingVO distrilbutionBillLading) { return page.setRecords(baseMapper.selectDistrilbutionBillLadingPage(page, distrilbutionBillLading)); @@ -665,7 +663,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl parcelListEntities = distributionParcelListService.list(Wrappers.query().lambda() @@ -898,7 +896,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl> parcelListMap = parcelListEntities.stream().collect(Collectors.groupingBy(DistributionParcelListEntity::getBrandName)); - if(CollUtil.isNotEmpty(parcelListMap)){ + if (CollUtil.isNotEmpty(parcelListMap)) { for (Map.Entry> entry : parcelListMap.entrySet()) { String key = entry.getKey(); JSONObject jsonObject = new JSONObject(); @@ -908,22 +906,22 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl listEntities = entry.getValue(); - NodePushMsg msg = new NodePushMsg(); - msg.setNode(WorkNodeEnums.PLAN_BILLOFLADING); - msg.setBrand(BrandEnums.getByValue(key)); - msg.setOperator(AuthUtil.getNickName()); - msg.setOperatorTime(new Date()); - msg.setMain(jsonObject.toString()); - msg.setContent(listEntities.stream().map(item->{ - return PushData.builder() - .orderCode(item.getOrderCode()) - .packageCode(item.getOrderPackageCode()) - .warehouseName(myCurrentWarehouse.getName()) - .waybillNumber(item.getWaybillNumber()) - .build(); - }).collect(Collectors.toList())); - log.info("推送工厂数据:{}", JSONUtil.toJsonStr(msg)); - factoryDataMessageSender.sendNodeDataByBrand(msg); + NodePushMsg msg = new NodePushMsg(); + msg.setNode(WorkNodeEnums.PLAN_BILLOFLADING); + msg.setBrand(BrandEnums.getByValue(key)); + msg.setOperator(AuthUtil.getNickName()); + msg.setOperatorTime(new Date()); + msg.setMain(jsonObject.toString()); + msg.setContent(listEntities.stream().map(item -> { + return PushData.builder() + .orderCode(item.getOrderCode()) + .packageCode(item.getOrderPackageCode()) + .warehouseName(myCurrentWarehouse.getName()) + .waybillNumber(item.getWaybillNumber()) + .build(); + }).collect(Collectors.toList())); + log.info("推送工厂数据:{}", JSONUtil.toJsonStr(msg)); + factoryDataMessageSender.sendNodeDataByBrand(msg); } } @@ -1135,7 +1133,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl distributionParcelListEntities = distributionParcelListService.listByIds(collect); - if(CollUtil.isNotEmpty(distributionParcelListEntities)){ + if (CollUtil.isNotEmpty(distributionParcelListEntities)) { sendFactoryPlan(distributionParcelListEntities, warehouse, distrilbutionBillLading); } } @@ -1758,15 +1756,16 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl ids = null; List stockArticleList = distrilbutionBillLadingDTO.getStockArticleList(); Map> collect = stockArticleList.stream().collect(Collectors.groupingBy(DistributionStockArticleEntity::getId)); - + List newPackageEntityList = new ArrayList<>(); List parcelLisList = distrilbutionBillLadingDTO.getParcelLisList();//品类信息 + //对原计划进行匹配 if (!list.isEmpty()) { List longs = new ArrayList<>(); //存在的 list.forEach(i -> { boolean b = false; - if (!Func.isEmpty(parcelLisList)){ - b = parcelLisList.stream().anyMatch(ii -> ii.getId().equals(i.getParcelListId())); + if (!Func.isEmpty(parcelLisList)) { + b = parcelLisList.stream().anyMatch(ii -> ii.getId().equals(i.getParcelListId())); } if (b) { //有数据 @@ -1823,41 +1822,42 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl !list.stream().map(DistributionReservationZeroPackageEntity::getParcelListId).collect(Collectors.toList()).contains(p.getId())).collect(Collectors.toList()); - } else { - // TODo 添加新的品类 - List packageEntityList = new ArrayList<>(); - if (Func.isNotEmpty(parcelLisList)){ - parcelLisList.forEach(w -> { - DistributionReservationZeroPackageEntity zeroPackageEntity = new DistributionReservationZeroPackageEntity(); - zeroPackageEntity.setParcelListId(w.getId()); - zeroPackageEntity.setStockArticleId(w.getStockArticleId()); - zeroPackageEntity.setReservationId(distrilbutionBillLadingDTO.getId()); - zeroPackageEntity.setQuantity(w.getTiQuantity()); - zeroPackageEntity.setZeroPackageStatus("3"); - zeroPackageEntity.setCategoryName(w.getFirsts()); - zeroPackageEntity.setType("3"); - zeroPackageEntity.setRealityQuantity(0); - packageEntityList.add(zeroPackageEntity); - //进行零担冻结数量维护 - distributionParcelNumberService.update(Wrappers.update().lambda() - .setSql("delivery_quantity = delivery_quantity +"+zeroPackageEntity.getQuantity()) - .eq(DistributionParcelNumberEntity::getParcelListId,zeroPackageEntity.getParcelListId()) - .eq(DistributionParcelNumberEntity::getStockArticleId,zeroPackageEntity.getStockArticleId()) - ); - }); - } - if (!packageEntityList.isEmpty()) { - distributionZeroPackageService.saveBatch(packageEntityList); - }else { + } + // TODo 添加新的品类 + if (Func.isNotEmpty(newPackageEntityList)) { + List zeroPackageEntityList = new ArrayList<>(); + newPackageEntityList.forEach(w -> { + DistributionReservationZeroPackageEntity zeroPackageEntity = new DistributionReservationZeroPackageEntity(); + zeroPackageEntity.setParcelListId(w.getId()); + zeroPackageEntity.setStockArticleId(w.getStockArticleId()); + zeroPackageEntity.setReservationId(distrilbutionBillLadingDTO.getId()); + zeroPackageEntity.setQuantity(w.getTiQuantity()); + zeroPackageEntity.setZeroPackageStatus("3"); + zeroPackageEntity.setCategoryName(w.getFirsts()); + zeroPackageEntity.setType("3"); + zeroPackageEntity.setRealityQuantity(0); + zeroPackageEntityList.add(zeroPackageEntity); + //进行零担冻结数量维护 + distributionParcelNumberService.update(Wrappers.update().lambda() + .setSql("delivery_quantity = delivery_quantity +" + zeroPackageEntity.getQuantity()) + .eq(DistributionParcelNumberEntity::getParcelListId, zeroPackageEntity.getParcelListId()) + .eq(DistributionParcelNumberEntity::getStockArticleId, zeroPackageEntity.getStockArticleId()) + ); + }); + if (!zeroPackageEntityList.isEmpty()) { + distributionZeroPackageService.saveBatch(zeroPackageEntityList); + } else { log.warn("没有品类数据"); return 0; } @@ -1943,7 +1943,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl reservationZeroPackageEntities = distributionZeroPackageService.list(Wrappers.query().lambda() .eq(DistributionReservationZeroPackageEntity::getReservationId, distrilbutionBillStock.getBillLadingId()) .eq(DistributionReservationZeroPackageEntity::getStockArticleId, distrilbutionBillStock.getStockArticleId()) @@ -1953,9 +1953,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImplupdate().lambda() - .setSql("delivery_quantity = delivery_quantity -"+ reservationZeroPackageEntity.getQuantity()) - .eq(DistributionParcelNumberEntity::getId,reservationZeroPackageEntity.getParcelListId()) - .eq(DistributionParcelNumberEntity::getStockArticleId,reservationZeroPackageEntity.getStockArticleId()) + .setSql("delivery_quantity = delivery_quantity -" + reservationZeroPackageEntity.getQuantity()) + .eq(DistributionParcelNumberEntity::getId, reservationZeroPackageEntity.getParcelListId()) + .eq(DistributionParcelNumberEntity::getStockArticleId, reservationZeroPackageEntity.getStockArticleId()) ); @@ -2302,7 +2302,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl distrilbutionBillLadingVOIPage = baseMapper.pageList(page, distrilbutionBillLadingDTO,collect); + IPage distrilbutionBillLadingVOIPage = baseMapper.pageList(page, distrilbutionBillLadingDTO, collect); List records = distrilbutionBillLadingVOIPage.getRecords(); // 获取所有的提货单ID @@ -2414,7 +2414,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list2 = new ArrayList<>(); distrilbutionBillLadingDTO.getPrintList().forEach(print -> { - if (!print.getUrl().contains("blob")){ + if (!print.getUrl().contains("blob")) { DistributionPrintEntity distributionPrintEntity = new DistributionPrintEntity(); distributionPrintEntity.setBillLadingId(distrilbutionBillLadingDTO.getId()); distributionPrintEntity.setGenre(Integer.parseInt(print.getState())); @@ -2423,7 +2423,7 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl packageEntities = distrilbutionBillPackageService.list(Wrappers.query().lambda() .eq(DistrilbutionBillPackageEntity::getBillLadingId, billLadingId) .ne(DistrilbutionBillPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue()) @@ -2540,17 +2540,17 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl packageIds = packageEntities.stream().map(DistrilbutionBillPackageEntity::getParceListId).collect(Collectors.toList()); List distributionParcelListEntities = distributionParcelListService.listByIds(packageIds); if (!distributionParcelListEntities.isEmpty()) { - List> mapList = new ArrayList<>(); - distributionParcelListEntities.forEach(p->{ - Map map = new HashMap<>(); - map.put("orderPackageCode",p.getOrderPackageCode()); - map.put("isSign",p.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())); - map.put("thirdProduct",p.getThirdProduct()); - map.put("fisrt",p.getThirdProduct()); - map.put("second",p.getSecond()); - map.put("materiel",p.getMaterialName()); - map.put("orderId",p.getStockArticleId()); - map.put("num",p.getQuantity()); + List> mapList = new ArrayList<>(); + distributionParcelListEntities.forEach(p -> { + Map map = new HashMap<>(); + map.put("orderPackageCode", p.getOrderPackageCode()); + map.put("isSign", p.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())); + map.put("thirdProduct", p.getThirdProduct()); + map.put("fisrt", p.getThirdProduct()); + map.put("second", p.getSecond()); + map.put("materiel", p.getMaterialName()); + map.put("orderId", p.getStockArticleId()); + map.put("num", p.getQuantity()); mapList.add(map); }); if (!mapList.isEmpty()) { @@ -3151,9 +3151,9 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl> stockListMap = inventoryAppVO.stream().collect(Collectors.groupingBy(DistrilbutionBillLadingInventoryAppVO::getStockListId)); @@ -3191,7 +3191,6 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl list4 = distributionParcelListService.list(Wrappers.query() .lambda() @@ -3327,11 +3326,11 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl