From f3ebf8e4d593e5c33b95f8a4ff391e5174b69e96 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Mon, 4 Nov 2024 00:02:21 +0800 Subject: [PATCH 1/4] =?UTF-8?q?feat(all):=20=E7=B4=A2=E8=8F=B2=E4=BA=9A?= =?UTF-8?q?=E5=B7=A5=E5=8E=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 修改索菲亚工厂客户名称和电话逻辑 --- .../service/impl/DeliveryNoteServiceImpl.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/service/impl/DeliveryNoteServiceImpl.java b/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/service/impl/DeliveryNoteServiceImpl.java index 9e2de1453..8d8e5fa12 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/service/impl/DeliveryNoteServiceImpl.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-suofeiya/src/main/java/com/logpm/factorydata/suofeiya/service/impl/DeliveryNoteServiceImpl.java @@ -164,16 +164,21 @@ public class DeliveryNoteServiceImpl extends BaseServiceImpl Date: Mon, 4 Nov 2024 00:02:57 +0800 Subject: [PATCH 2/4] =?UTF-8?q?feat(all):=20=E6=88=91=E4=B9=90=E5=B7=A5?= =?UTF-8?q?=E5=8E=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 修改我乐工厂重复包条导致数据丢失问题 --- .../olo/service/impl/DeliveryNoteServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/service/impl/DeliveryNoteServiceImpl.java b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/service/impl/DeliveryNoteServiceImpl.java index 159a534a1..bffdfc225 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/service/impl/DeliveryNoteServiceImpl.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-olo/src/main/java/com/logpm/factorydata/olo/service/impl/DeliveryNoteServiceImpl.java @@ -52,6 +52,7 @@ import java.math.BigDecimal; import java.nio.file.Files; import java.time.LocalDateTime; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -131,7 +132,9 @@ public class DeliveryNoteServiceImpl extends BaseServiceImpl advances = new ArrayList<>(); + int num = 0; for (Map.Entry> stringListEntry : advanceMap.entrySet()) { + num = num + 1; List value = stringListEntry.getValue(); // 计算数量 BigDecimal totalQty = value.stream().map(i -> Convert.toBigDecimal(i.getQty())).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -177,6 +180,7 @@ public class DeliveryNoteServiceImpl extends BaseServiceImpl 1) { - advanceDetailEntity.setOrderPackageCode("OLO" + orderPackageDTO.getSn() + "-" + (i + 1) + "-" + StrUtil.padPre(String.valueOf(i + 1), 3, "0")); + advanceDetailEntity.setOrderPackageCode("OLO" + orderPackageDTO.getSn() + "-" + DateUtil.format(new Date(), "yyyyMMddHHmmss") + "-" + num + "-" + StrUtil.padPre(String.valueOf(i + 1), 3, "0")); } else { advanceDetailEntity.setOrderPackageCode(orderPackageDTO.getSn()); } From 407d30051645d65cd463c7b19294e8d22ff3e8ed Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 4 Nov 2024 00:03:27 +0800 Subject: [PATCH 3/4] =?UTF-8?q?1.=E5=B9=B2=E7=BA=BFbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trunkline/vo/CarsLoadOrderInfoVO.java | 18 +- .../jobhandle/SyncOrderInfoToPlatform.java | 23 +- .../mapper/TrunklineAdvanceMapper.java | 1 + .../mapper/TrunklineAdvanceMapper.xml | 7 + .../service/ITrunklineAdvanceService.java | 2 + .../impl/TrunklineAdvanceServiceImpl.java | 5 + .../impl/TrunklineCarsLoadServiceImpl.java | 234 ++++++++++++------ .../mapper/WarehouseWaybillMapper.xml | 24 +- 8 files changed, 215 insertions(+), 99 deletions(-) diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/CarsLoadOrderInfoVO.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/CarsLoadOrderInfoVO.java index f9bee415e..b8b4a37f9 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/CarsLoadOrderInfoVO.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/CarsLoadOrderInfoVO.java @@ -15,13 +15,17 @@ public class CarsLoadOrderInfoVO implements Serializable { private Integer loadingNum = 0; private Integer unloadNum = 0; private Integer signNum = 0; - private BigDecimal unloadIncome = BigDecimal.ZERO; - private BigDecimal costZhang = BigDecimal.ZERO; - private BigDecimal costPiece = BigDecimal.ZERO; - private BigDecimal income = BigDecimal.ZERO; - private BigDecimal weight = BigDecimal.ZERO; - private BigDecimal volume = BigDecimal.ZERO; - private BigDecimal orderFreight = BigDecimal.ZERO; + private BigDecimal unloadIncome = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private BigDecimal costZhang = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private BigDecimal costPiece = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private BigDecimal income = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private BigDecimal weight = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private BigDecimal volume = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private BigDecimal orderFreight = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP); + private String orderGoodsName; + private String orderGoodsNum; + private String orderGoodsVolume; + private String orderGoodsWeight; private String checkUserName;//审核人员 diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java index 9364e1f98..9f122e3e1 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java @@ -3,8 +3,6 @@ package com.logpm.patch.jobhandle; import cn.hutool.core.collection.CollUtil; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.logpm.basicdata.entity.BasicdataClientEntity; -import com.logpm.basicdata.entity.BasicdataStoreBusinessEntity; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.distribution.entity.DistributionParcelListEntity; @@ -1264,17 +1262,38 @@ public class SyncOrderInfoToPlatform { distributionParcelListClient.updateList(updateParceList); } + } + @XxlJob("jisuanLoadNum") + public ReturnT jisuanLoadNum(String param) { + log.info("############jisuanLoadNum: 计算车次数量 开始"); + if(StringUtil.isBlank(param)){ + log.warn("###########jisuanLoadNum: 车次号为空"); + throw new CustomerException(405,"车次号为空"); + } + String[] split = param.split(","); + for (int i = 0; i < split.length; i++) { + String carNo = split[i]; + log.info("###################jisuanLoadNum: 当前处理的车次号为 carNo={}",carNo); + TrunklineCarsLoadEntity entityByCarsNo = carsLoadClient.findEntityByCarsNo(carNo); + Long loadId = entityByCarsNo.getId(); + + carsLoadClient.updateCardLoadNum(loadId); + } + log.info("############jisuanLoadNum: 计算车次数量 完成"); + + return ReturnT.SUCCESS; } + } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.java index 2a6630595..a69cd08b9 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.java @@ -50,4 +50,5 @@ public interface TrunklineAdvanceMapper extends BaseMapper advancePageListByBussiness(IPage page, @Param("param") AdvanceDTO advanceDTO); + Integer findTotalNumByWaybillNoAndOrderCode(@Param("waybillNo") String waybillNo, @Param("orderCode") String orderCode); } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml index d1f0b2e08..65116ee20 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml @@ -261,4 +261,11 @@ where waybill_no = #{waybillNo} + + diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceService.java index d492cfed5..5e13956c8 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceService.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineAdvanceService.java @@ -51,4 +51,6 @@ public interface ITrunklineAdvanceService extends BaseService advancePageListByBussiness(IPage page, AdvanceDTO advanceDTO); void clearWaybillInfoByWaybillNo(String waybillNo); + + Integer findTotalNumByWaybillNoAndOrderCode(String waybillNo, String orderCode); } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java index c27f69c62..f2e702d84 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceServiceImpl.java @@ -1974,4 +1974,9 @@ public class TrunklineAdvanceServiceImpl extends BaseServiceImpl !Objects.isNull(scan.getWarehouseId()) && NumberUtil.equals(nodeId,scan.getWarehouseId()) && StringUtil.equals(orderCode,scan.getOrderCode()) && StringUtil.equals(waybillNo,scan.getWaybillNo())).mapToInt(TrunklineCarsLoadScanEntity::getNum).sum(); - Integer carsOrderRealUnloadingNum = scanList.stream().filter(scan -> !Objects.isNull(scan.getScanStatus()) && !scan.getScanStatus().equals("1") && !Objects.isNull(scan.getUnloadNodeId()) && NumberUtil.equals(nodeId,scan.getUnloadNodeId()) && StringUtil.equals(orderCode,scan.getOrderCode()) && StringUtil.equals(waybillNo,scan.getWaybillNo())).mapToInt(TrunklineCarsLoadScanEntity::getUnloadNum).sum(); + Integer carsOrderRealUnloadingNum = scanList.stream().filter(scan -> !Objects.isNull(scan.getScanStatus()) && !scan.getScanStatus().equals("1") && !Objects.isNull(scan.getUnloadNodeId()) && StringUtil.equals(orderCode,scan.getOrderCode()) && StringUtil.equals(waybillNo,scan.getWaybillNo())).mapToInt(TrunklineCarsLoadScanEntity::getUnloadNum).sum(); Integer carsOrderRealSignNum = scanList.stream().filter(scan -> !Objects.isNull(scan.getScanStatus()) && scan.getScanStatus().equals("3") && StringUtil.equals(orderCode,scan.getOrderCode()) && StringUtil.equals(waybillNo,scan.getWaybillNo())).mapToInt(TrunklineCarsLoadScanEntity::getUnloadNum).sum(); carsOrderEntity.setRealNum(carsOrderRealLoadingNum); carsOrderEntity.setUnloadNum(carsOrderRealUnloadingNum); @@ -3598,21 +3598,23 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl parcelListEntities = distributionParcelListClient.findAllStockListByOrderPackageCode(orderPackageCode); @@ -3648,53 +3654,53 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl> trunklineCarsLoadScanMapByType = trunklineCarsLoadScanListByOrderCode.stream().collect(Collectors.groupingBy(TrunklineCarsLoadScanVO::getType)); AtomicReference totalIncomingParice = new AtomicReference<>(BigDecimal.ZERO); AtomicReference totalVolume = new AtomicReference<>(BigDecimal.ZERO); AtomicReference totalWeight = new AtomicReference<>(BigDecimal.ZERO); + Map goodsByNum = new HashMap<>(); + Map goodsByVolume = new HashMap<>(); + Map goodsByWeight = new HashMap<>(); trunklineCarsLoadScanMapByType.keySet().forEach(type -> { List trunklineCarsLoadScanVOS = trunklineCarsLoadScanMapByType.get(type); @@ -4726,6 +4748,25 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl orderGoodsNameList = new ArrayList<>(); + List orderGoodsNumList = new ArrayList<>(); + List orderGoodsVolumeList = new ArrayList<>(); + List orderGoodsWeightList = new ArrayList<>(); + + goodsByNum.keySet().forEach(g -> { + orderGoodsNameList.add(g); + orderGoodsNumList.add(goodsByNum.get(g)+""); + orderGoodsVolumeList.add(goodsByVolume.get(g).setScale(2, BigDecimal.ROUND_HALF_UP).toString()); + orderGoodsWeightList.add(goodsByWeight.get(g).setScale(2, BigDecimal.ROUND_HALF_UP).toString()); + }); + + carsLoadOrderInfoVO.setUnloadIncome(totalIncomingParice.get()); carsLoadOrderInfoVO.setWeight(totalWeight.get()); carsLoadOrderInfoVO.setVolume(totalVolume.get()); + carsLoadOrderInfoVO.setOrderGoodsNum(String.join(",", orderGoodsNumList)); + carsLoadOrderInfoVO.setOrderGoodsName(String.join(",", orderGoodsNameList)); + carsLoadOrderInfoVO.setOrderGoodsVolume(String.join(",", orderGoodsVolumeList)); + carsLoadOrderInfoVO.setOrderGoodsWeight(String.join(",", orderGoodsWeightList)); + resulOrderList.add(carsLoadOrderInfoVO); }); } @@ -8982,6 +9058,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl @@ -234,18 +235,6 @@ #{item} - - and ( - lww.departure_warehouse_id in - - #{item} - - or lww.destination_warehouse_id in - - #{item} - - ) - and Locate(#{param.waybillNo},lww.waybill_no) > 0 @@ -373,6 +362,17 @@ group by lww.id + + HAVING + + + GROUP_CONCAT(DISTINCT ltwt.warehouse_id) like CONCAT('%',#{item},'%') + + + or GROUP_CONCAT(DISTINCT ltwt.warehouse_id) like CONCAT('%',#{item},'%') + + + order by lww.create_time desc From 3e5cc40667b53b585beed720491960f05839a114 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 4 Nov 2024 01:09:12 +0800 Subject: [PATCH 4/4] =?UTF-8?q?1.=E5=B9=B2=E7=BA=BFbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jobhandle/SyncOrderInfoToPlatform.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java index 9f122e3e1..dbddb9296 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java @@ -1270,23 +1270,22 @@ public class SyncOrderInfoToPlatform { public ReturnT jisuanLoadNum(String param) { log.info("############jisuanLoadNum: 计算车次数量 开始"); - if(StringUtil.isBlank(param)){ - log.warn("###########jisuanLoadNum: 车次号为空"); - throw new CustomerException(405,"车次号为空"); - } + List ls = warehouseMappingDataService.findAllDealWithWaybillNo(); - String[] split = param.split(","); + ls.forEach(json -> { + Integer id = json.getInt("id"); + String carsNo = json.getStr("waybillNo"); - for (int i = 0; i < split.length; i++) { - String carNo = split[i]; - log.info("###################jisuanLoadNum: 当前处理的车次号为 carNo={}",carNo); + log.info("###################jisuanLoadNum: 当前处理的车次号为 carsNo={}",carsNo); - TrunklineCarsLoadEntity entityByCarsNo = carsLoadClient.findEntityByCarsNo(carNo); + TrunklineCarsLoadEntity entityByCarsNo = carsLoadClient.findEntityByCarsNo(carsNo); Long loadId = entityByCarsNo.getId(); carsLoadClient.updateCardLoadNum(loadId); - } + warehouseMappingDataService.updateStatusDealwithWaybillById(id); + + }); log.info("############jisuanLoadNum: 计算车次数量 完成"); @@ -1297,3 +1296,4 @@ public class SyncOrderInfoToPlatform { } +