From efe0ef41c282bac9f458ee7f14410399b6a9b789 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Thu, 24 Oct 2024 16:43:10 +0800 Subject: [PATCH 1/9] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E9=87=91?= =?UTF-8?q?=E7=89=8C=E5=B7=A5=E5=8E=82=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 修改金牌入库数据不回推问题 --- .../com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java | 4 ++-- .../jinpai/service/impl/DeliveryNoteServiceImpl.java | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java index e9126a67b..54d37bf01 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java @@ -125,7 +125,7 @@ public class NodeDataPushListener { Map pushEntityMap = new HashMap<>(); if (CollUtil.isNotEmpty(pushEntities)) { pushEntityMap = pushEntities.stream().filter(pushEntity -> { - return pushEntity.getNode().equals(FactoryNodeEnums.FINAL_NET_ARRIVE_CAR.getCode()); + return StrUtil.equals(pushEntity.getNode(),FactoryNodeEnums.END_WAREHOUSE_UNLOADING.getCode().toString()); }).collect(Collectors.toMap(FactoryNodePushEntity::getOrderCode, v -> v)); } JSONObject mainJson = JSONUtil.parseObj(main); @@ -191,7 +191,7 @@ public class NodeDataPushListener { Map pushEntityMap = new HashMap<>(); if (CollUtil.isNotEmpty(pushEntities)) { pushEntityMap = pushEntities.stream().filter(pushEntity -> { - return pushEntity.getNode().equals(FactoryNodeEnums.END_WAREHOUSE_UNLOADING.getCode()); + return StrUtil.equals(pushEntity.getNode(),FactoryNodeEnums.END_WAREHOUSE_UNLOADING.getCode().toString()); }).collect(Collectors.toMap(FactoryNodePushEntity::getPackageCode, v -> v)); } for (PushData pushData : content) { diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/DeliveryNoteServiceImpl.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/DeliveryNoteServiceImpl.java index 2ea4f88f7..9abbaf48c 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/DeliveryNoteServiceImpl.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/service/impl/DeliveryNoteServiceImpl.java @@ -392,6 +392,7 @@ public class DeliveryNoteServiceImpl extends BaseServiceImpl Date: Thu, 24 Oct 2024 17:17:45 +0800 Subject: [PATCH 2/9] =?UTF-8?q?1.=E9=85=8D=E8=BD=BD=E5=8D=B8=E8=BD=A6?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logpm/patch/jobhandle/SyncOrderInfoToPlatform.java | 9 +++++---- .../service/impl/TrunklineCarsLoadServiceImpl.java | 1 + 2 files changed, 6 insertions(+), 4 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 b8eca629b..dd2235042 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 @@ -1002,11 +1002,10 @@ public class SyncOrderInfoToPlatform { //查询所有装车明细 List carsLoadScanEntities = carsLoadScanClient.findAllListByLoadId(loadId); - List scanloadIdList = carsLoadScanEntities.stream().map(TrunklineCarsLoadScanEntity::getId).collect(Collectors.toList()); - + List scanloadIdList = new ArrayList<>(); //把carsLoadScanEntities通过unloadNodeId分组 - Map> collect = carsLoadScanEntities.stream().collect(Collectors.groupingBy(TrunklineCarsLoadScanEntity::getUnloadNodeId)); + Map> collect = carsLoadScanEntities.stream().filter(s -> !Objects.isNull(s.getUnloadNodeId())).collect(Collectors.groupingBy(TrunklineCarsLoadScanEntity::getUnloadNodeId)); collect.keySet().forEach(unloadNodeId -> { List trunklineCarsLoadScanEntities = collect.get(unloadNodeId); @@ -1026,7 +1025,9 @@ public class SyncOrderInfoToPlatform { }); }); - carsLoadScanClient.removeLoadScanByIds(scanloadIdList); + if(CollUtil.isNotEmpty(scanloadIdList)){ + carsLoadScanClient.removeLoadScanByIds(scanloadIdList); + } carsLoadClient.updateCardLoadNum(loadId); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java index ea7d99f26..c72b8dc88 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java @@ -8790,6 +8790,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl neloadScanQueryWrapper = new QueryWrapper<>(); neloadScanQueryWrapper.eq("load_id", loadId) .eq("scan_code", orderPackageCode) + .eq("unload_node_id", warehouseId) .ne("scan_status", "1"); TrunklineCarsLoadScanEntity scanEntity = trunklineCarsLoadScanService.getOne(neloadScanQueryWrapper); From e4da1a26fe84ed00e38dc0ff89a6664241f70eb1 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Thu, 24 Oct 2024 17:59:04 +0800 Subject: [PATCH 3/9] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E7=B4=A2?= =?UTF-8?q?=E8=8F=B2=E4=BA=9A=E5=B7=A5=E5=8E=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 修改索菲亚不用区域进入不用仓库 --- .../suofeiya/service/impl/DeliveryNoteServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 eecc53b68..9993cd121 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 @@ -98,7 +98,7 @@ public class DeliveryNoteServiceImpl extends BaseServiceImpl warehouseByBrandAndSiteName = baseClient.getWarehouseByBrandAndSiteName(BrandEnums.SFY.getValue(), BrandEnums.SFY.getValue()); + R warehouseByBrandAndSiteName = baseClient.getWarehouseByBrandAndSiteName(BrandEnums.SFY.getValue(), vo.getCarrierNo()); if (ObjectUtil.equal(HttpConstants.HTTP.HTTP_RESOURCE_CODE.SUCCESS_CODE, warehouseByBrandAndSiteName.getCode())) { FactoryWarehouseBindVO data = warehouseByBrandAndSiteName.getData(); if (ObjectUtil.isNotNull(data)) { From dbc2cde4340d38ab510821451a329751383fc93d Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Thu, 24 Oct 2024 18:12:01 +0800 Subject: [PATCH 4/9] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E9=87=91?= =?UTF-8?q?=E7=89=8C=E5=B7=A5=E5=8E=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 修改金牌工厂回推包件逻辑 --- .../com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java | 1 + 1 file changed, 1 insertion(+) diff --git a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java index 54d37bf01..9cfcded52 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-jinpai/src/main/java/com/logpm/factorydata/jinpai/mq/NodeDataPushListener.java @@ -219,6 +219,7 @@ public class NodeDataPushListener { .orderCode(pushData.getOrderCode()) .node(FactoryNodeEnums.END_WAREHOUSE_UNLOADING.getCode().toString()) .content(JSONUtil.toJsonStr(js)) + .packageCode(pushData.getPackageCode()) .resultContent(result) .build()); } From cec8046749842ea9f971f0780f7427db05b4c6bd Mon Sep 17 00:00:00 2001 From: zhaoqiaobo <583671871@qq.com> Date: Thu, 24 Oct 2024 18:38:40 +0800 Subject: [PATCH 5/9] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E5=BF=97?= =?UTF-8?q?=E9=82=A6=E5=B7=A5=E5=8E=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 修改志邦工厂订单转暂存单时没有物料的问题 --- .../factorydata/zbom/service/impl/ReceiptServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/service/impl/ReceiptServiceImpl.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/service/impl/ReceiptServiceImpl.java index 645d02847..1c7d5f135 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/service/impl/ReceiptServiceImpl.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/service/impl/ReceiptServiceImpl.java @@ -221,6 +221,9 @@ public class ReceiptServiceImpl extends BaseServiceImpl Date: Thu, 24 Oct 2024 21:31:11 +0800 Subject: [PATCH 6/9] =?UTF-8?q?fix:=20=E5=A2=9E=E5=8A=A0=E8=BD=A6=E7=89=8C?= =?UTF-8?q?=E7=9A=84=E5=94=AF=E4=B8=80=E9=99=90=E5=88=B6=202.=E5=8F=96?= =?UTF-8?q?=E6=B6=88=E9=85=8D=E8=BD=BD=E6=98=8E=E7=BB=86=E7=9A=84=E9=99=90?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/IWarehouseWaybillDetailClient.java | 4 + .../WaybillOrderTotalWeightAndVolumeVO.java | 24 ++++++ .../BasicdataVehicleController.java | 14 +++- .../impl/BasicdataVehicleServiceImpl.java | 8 ++ .../DistributionParcelListServiceImpl.java | 1 + .../java/com/logpm/factory/TestService.java | 24 +++++- .../mapper/TrunklineCarsLoadScanMapper.xml | 1 - .../service/impl/OpenOrderServiceImpl.java | 1 + .../impl/TrunklineCarsLoadServiceImpl.java | 81 ++++++++++++++----- .../TrunklineWaybillOrderServiceImpl.java | 4 + .../feign/WarehouseWaybillDetailClient.java | 10 +++ .../mapper/WarehouseWayBillDetailMapper.java | 4 + .../mapper/WarehouseWaybillDetailMapper.xml | 10 +++ .../IWarehouseWayBillDetailService.java | 13 +++ .../WarehouseWayBillDetailServiceImpl.java | 7 ++ 15 files changed, 178 insertions(+), 28 deletions(-) create mode 100644 blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WaybillOrderTotalWeightAndVolumeVO.java diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseWaybillDetailClient.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseWaybillDetailClient.java index 4737ee5fa..547570601 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseWaybillDetailClient.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseWaybillDetailClient.java @@ -17,6 +17,7 @@ package com.logpm.warehouse.feign; import com.logpm.warehouse.entity.WarehouseWayBillDetail; +import com.logpm.warehouse.vo.WaybillOrderTotalWeightAndVolumeVO; import org.springblade.common.constant.ModuleNameConstant; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; @@ -25,6 +26,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; +import java.util.Map; /** * 运单表 Feign接口类 @@ -76,4 +78,6 @@ public interface IWarehouseWaybillDetailClient { @GetMapping(API_PREFIX+"/findENtityByCodeAndName") WarehouseWayBillDetail findENtityByCodeAndName(@RequestParam String orderCode, @RequestParam String category); + @PostMapping(API_PREFIX+"/findWaybillOrderTotalWeightAndVolumeByWaybillNoList") + List findWaybillOrderTotalWeightAndVolumeByWaybillNoList(@RequestBody List waybillNoList); } diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WaybillOrderTotalWeightAndVolumeVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WaybillOrderTotalWeightAndVolumeVO.java new file mode 100644 index 000000000..e69a256fe --- /dev/null +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WaybillOrderTotalWeightAndVolumeVO.java @@ -0,0 +1,24 @@ +package com.logpm.warehouse.vo; + +import lombok.Data; + +@Data +public class WaybillOrderTotalWeightAndVolumeVO { + + /** + * 运单号 + */ + private String waybillNo; + + /** + * 总体积 + */ + private String sumVolume; + + /** + * 总总量 + */ + private String sumWeight; + + +} diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataVehicleController.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataVehicleController.java index ac756d579..97ee3bcfa 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataVehicleController.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataVehicleController.java @@ -35,6 +35,7 @@ import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.annotations.Param; +import org.springblade.common.exception.CustomerException; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.mp.support.Condition; @@ -150,10 +151,15 @@ public class BasicdataVehicleController extends BladeController { @ApiOperationSupport(order = 4) @ApiOperation(value = "新增", notes = "传入basicdataVehicle") public R save(@Valid @RequestBody BasicdataVehicleDTO basicdataVehicle) { - boolean save = basicdataVehicleService.saveVehicle(basicdataVehicle); - //加入关联表 - if (null !=basicdataVehicle.getVehicleOwners() && save){ - Integer b = basicdataVehicleService.updateOwners(basicdataVehicle); + boolean save = false; + try { + save = basicdataVehicleService.saveVehicle(basicdataVehicle); + //加入关联表 + if (null !=basicdataVehicle.getVehicleOwners() && save){ + Integer b = basicdataVehicleService.updateOwners(basicdataVehicle); + } + } catch (CustomerException e) { + throw new CustomerException(e.getMessage()); } return R.status(save); } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataVehicleServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataVehicleServiceImpl.java index 6605a31a0..d1e296710 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataVehicleServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataVehicleServiceImpl.java @@ -168,8 +168,16 @@ public class BasicdataVehicleServiceImpl extends BaseServiceImpl list = this.list(); + // 验证车牌号码是否在系统已存在 + if (list.stream().anyMatch(e -> e.getVehicleNub().equals(basicdataVehicle.getVehicleNub()))) { + throw new CustomerException("车牌号已存在,请重新输入"); } + + return this.save(basicdataVehicle); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java index 636520b12..e7d62894d 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java @@ -1570,6 +1570,7 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl findListByOrderPackageCodes(List orderPackageCodes) { + log.info(">>>>>>>>>>>>>>>> orderPackageCodes :{}",orderPackageCodes); return baseMapper.findListByOrderPackageCodes(orderPackageCodes); } diff --git a/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java b/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java index b80b7bfa4..fac8e69e9 100644 --- a/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java +++ b/blade-service/logpm-factory/src/test/java/com/logpm/factory/TestService.java @@ -1,5 +1,6 @@ package com.logpm.factory; +import cn.hutool.core.collection.CollUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.http.HttpUtil; @@ -1114,9 +1115,28 @@ public class TestService { } public static void main(String[] args) throws IOException, InterruptedException { - Integer a = new Integer("22222"); + List strings = new ArrayList<>(); - System.out.println(22222==a); + strings.add("11"); + strings.add("11"); + strings.add("14"); + strings.add("11"); + strings.add("11"); + strings.add("13"); + strings.add("11"); + strings.add("11"); + + for (int a=0 ;a< 1200;a++){ + strings.add(a+100+""); + + } + + List> split = CollUtil.split(strings, 500); + + split.forEach(s -> { + System.out.println(s); + + }); // Date data1 = DateUtil.parse("2024-07-23 17:07:23.123","yyyy-MM-dd hh:mm:ss.SSS"); // Date data2 = DateUtil.parse("2024-07-24 17:07:23.123","yyyy-MM-dd hh:mm:ss.SSS"); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml index 677661a7b..f3a7d5cc1 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml @@ -846,7 +846,6 @@ from logpm_trunkline_cars_load_scan ltcls left join logpm_trunkline_cars_order ltco on ltco.waybill_id = ltcls.waybill_id and ltco.order_code = ltcls.order_code where ltcls.load_id = #{loadId} - and ltco.id is null GROUP BY IFNULL(ltcls.waybill_no,'--'), ltcls.order_code order by IFNULL(ltcls.waybill_no,'--') desc, ltcls.order_code desc diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java index ae1732949..6ee57e13a 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java @@ -705,6 +705,7 @@ public class OpenOrderServiceImpl implements IOpenOrderService { List> orderPackageCodeList = CollUtil.split(orderPackageCodes, 500); List parcelListEntities = new ArrayList<>(); orderPackageCodeList.forEach(orderPackageCodeList1 -> { + log.info("###############openWaybill: 分组查询订单包裹信息, {}",orderPackageCodeList1); parcelListEntities.addAll(distributionParcelListClient.findListByOrderPackageCodes(orderPackageCodeList1)); }); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java index c72b8dc88..57ce9811a 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java @@ -54,6 +54,7 @@ import com.logpm.warehouse.feign.IWarehouseTrayTypeClient; import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient; import com.logpm.warehouse.feign.IWarehouseWaybillClient; import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient; +import com.logpm.warehouse.vo.WaybillOrderTotalWeightAndVolumeVO; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringEscapeUtils; @@ -4516,41 +4517,69 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl carsLoadWaybillInfoList = trunklineCarsOrderService.findWaybillOrderByloadId(loadId); + + // 得到集合中的运单号集合 +// List waybillNoList = carsLoadWaybillInfoList.stream().map(CarsLoadWaybillInfoVO::getWaybillNo).collect(Collectors.toList()); + // 查询运单号的总量、体积 +// List waybillOrderTotalList = warehouseWaybillDetailClient.findWaybillOrderTotalWeightAndVolumeByWaybillNoList(waybillNoList); + for (CarsLoadWaybillInfoVO carsLoadWaybillInfoVO : carsLoadWaybillInfoList) { - String waybillNo = carsLoadWaybillInfoVO.getWaybillNo(); - List wayBillDetails = warehouseWaybillDetailClient.findListByWaybillNo(waybillNo); + // 获取运单对应的总体积和总重量 +// WaybillOrderTotalWeightAndVolumeVO waybillOrderTotalWeightAndVolumeVO = getWaybillOrderTotalWeighAndVolume(carsLoadWaybillInfoVO, waybillOrderTotalList); + + + String waybillNo = carsLoadWaybillInfoVO.getWaybillNo(); + // 查询 明细上的总量和体积 String openPrice = null; String productNames = null; - for (WarehouseWayBillDetail wayBillDetail : wayBillDetails) { - String productName = wayBillDetail.getProductName(); - Integer num = wayBillDetail.getNum(); - BigDecimal price = wayBillDetail.getPrice(); - if (StringUtil.isBlank(openPrice)) { - openPrice = price.toPlainString(); - } else { - openPrice = openPrice + "," + price.toPlainString(); - } - if (StringUtil.isBlank(productNames)) { - productNames = productName + "(" + num + ")"; - } else { - productNames = productNames + "," + productName + "(" + num + ")"; + BigDecimal oneWeight = BigDecimal.ZERO; + BigDecimal oneVolume = BigDecimal.ZERO; + if(!StringUtil.isBlank(waybillNo)){ + List wayBillDetails = warehouseWaybillDetailClient.findListByWaybillNo(waybillNo); + + + + + for (WarehouseWayBillDetail wayBillDetail : wayBillDetails) { + String productName = wayBillDetail.getProductName(); + Integer num = wayBillDetail.getNum(); + BigDecimal volume = wayBillDetail.getVolume(); + BigDecimal weight = wayBillDetail.getWeight(); + BigDecimal price = wayBillDetail.getPrice(); + if (StringUtil.isBlank(openPrice)) { + openPrice = price.toPlainString(); + } else { + openPrice = openPrice + "," + price.toPlainString(); + } + if (StringUtil.isBlank(productNames)) { + productNames = productName + "(" + num + ")"; + } else { + productNames = productNames + "," + productName + "(" + num + ")"; + } } + + List carsLoadOrderInfoListPlan = trunklineCarsOrderService.findCarsLoadOrderInfoListPlan(loadId, waybillNo); + carsLoadOrderInfoListPlan.forEach(carsLoadOrderInfoVO -> { + carsLoadOrderInfoVO.setUnloadIncome(carsLoadOrderInfoVO.getUnloadIncome().setScale(2, BigDecimal.ROUND_HALF_UP)); + carsLoadOrderInfoVO.setOrderFreight(carsLoadOrderInfoVO.getOrderFreight().setScale(2, BigDecimal.ROUND_HALF_UP)); + }); + carsLoadWaybillInfoVO.setCarsLoadOrderInfoList(carsLoadOrderInfoListPlan); + } + + carsLoadWaybillInfoVO.setOpenPrice(openPrice); carsLoadWaybillInfoVO.setGoodsName(productNames); // List carsLoadOrderInfoList = trunklineCarsOrderService.findCarsLoadOrderInfoList(loadId, waybillNo); - List carsLoadOrderInfoListPlan = trunklineCarsOrderService.findCarsLoadOrderInfoListPlan(loadId, waybillNo); + if(!StringUtil.isBlank(waybillNo)){ + + } - carsLoadOrderInfoListPlan.forEach(carsLoadOrderInfoVO -> { - carsLoadOrderInfoVO.setUnloadIncome(carsLoadOrderInfoVO.getUnloadIncome().setScale(2, BigDecimal.ROUND_HALF_UP)); - carsLoadOrderInfoVO.setOrderFreight(carsLoadOrderInfoVO.getOrderFreight().setScale(2, BigDecimal.ROUND_HALF_UP)); - }); - carsLoadWaybillInfoVO.setCarsLoadOrderInfoList(carsLoadOrderInfoListPlan); // carsLoadWaybillInfoVO.setCarsLoadOrderInfoListPlan(carsLoadOrderInfoListPlan); TrunklineCostShareRecordEntity costShareRecordEntity = trunklineCostShareRecordService.findTotalUnloadNumByLoadAndWaybillNo(loadId, waybillNo); @@ -4660,6 +4689,16 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl waybillOrderTotalList) { + for (WaybillOrderTotalWeightAndVolumeVO waybillOrderTotalWeightAndVolumeVO : waybillOrderTotalList) { + String waybillNo = waybillOrderTotalWeightAndVolumeVO.getWaybillNo(); + if (waybillNo.equals(carsLoadWaybillInfoVO.getWaybillNo())) { + return waybillOrderTotalWeightAndVolumeVO; + } + } + return null; + } + @Override public R zeroSuppleList(LoadCarsDTO loadCarsDTO) { diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillOrderServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillOrderServiceImpl.java index f01e0970d..d583dce87 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillOrderServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillOrderServiceImpl.java @@ -29,6 +29,10 @@ public class TrunklineWaybillOrderServiceImpl extends BaseServiceImpl findListByWaybillId(Long waybillId) { + + // 查询运单 + + return baseMapper.findListByWaybillId(waybillId); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseWaybillDetailClient.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseWaybillDetailClient.java index b4c8693f6..c2c9df898 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseWaybillDetailClient.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseWaybillDetailClient.java @@ -5,11 +5,13 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.logpm.warehouse.entity.WarehouseWayBillDetail; import com.logpm.warehouse.service.IWarehouseWayBillDetailService; +import com.logpm.warehouse.vo.WaybillOrderTotalWeightAndVolumeVO; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; import java.util.List; +import java.util.Map; @ApiIgnore @RestController @@ -86,4 +88,12 @@ public class WarehouseWaybillDetailClient implements IWarehouseWaybillDetailClie } return null; } + + @Override + public List findWaybillOrderTotalWeightAndVolumeByWaybillNoList(List waybillNoList) { + + List data=warehouseWayBillDetailService.findWaybillOrderTotalWeightAndVolumeByWaybillNoList(waybillNoList); + + return data; + } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWayBillDetailMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWayBillDetailMapper.java index a723c8768..831c86245 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWayBillDetailMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWayBillDetailMapper.java @@ -2,14 +2,18 @@ package com.logpm.warehouse.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.logpm.warehouse.entity.WarehouseWayBillDetail; +import com.logpm.warehouse.vo.WaybillOrderTotalWeightAndVolumeVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; @Mapper public interface WarehouseWayBillDetailMapper extends BaseMapper { List findByWaybillIds(List ids); void deleteByWaybillNo(@Param("waybillNo") String waybillNo); + + List findWaybillOrderTotalWeightAndVolumeByWaybillNoList(@Param("waybillNoList") List waybillNoList); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillDetailMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillDetailMapper.xml index 0aa47d850..0f64289a4 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillDetailMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillDetailMapper.xml @@ -16,5 +16,15 @@ and is_deleted = 0 + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWayBillDetailService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWayBillDetailService.java index fe15a6d4a..5e1ff9a30 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWayBillDetailService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseWayBillDetailService.java @@ -1,9 +1,11 @@ package com.logpm.warehouse.service; import com.logpm.warehouse.entity.WarehouseWayBillDetail; +import com.logpm.warehouse.vo.WaybillOrderTotalWeightAndVolumeVO; import org.springblade.core.mp.base.BaseService; import java.util.List; +import java.util.Map; public interface IWarehouseWayBillDetailService extends BaseService { WarehouseWayBillDetail findByProductName(String productName); @@ -23,4 +25,15 @@ public interface IWarehouseWayBillDetailService extends BaseService findByWaybillIds(List ids); void deleteByWaybillNo(String waybillNo); + + /** + * 通过运单单号集合查询运单的 体积和重量 + * map中包含 + *
  • waybillNo : 运单号
  • + *
  • sumVolume : 运单总体积
  • + *
  • sumWeight : 运单总总量
  • + * @param waybillNoList + * @return + */ + List findWaybillOrderTotalWeightAndVolumeByWaybillNoList(List waybillNoList); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWayBillDetailServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWayBillDetailServiceImpl.java index 8d866e6dc..8d14cefc1 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWayBillDetailServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWayBillDetailServiceImpl.java @@ -4,12 +4,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.logpm.warehouse.entity.WarehouseWayBillDetail; import com.logpm.warehouse.mapper.WarehouseWayBillDetailMapper; import com.logpm.warehouse.service.IWarehouseWayBillDetailService; +import com.logpm.warehouse.vo.WaybillOrderTotalWeightAndVolumeVO; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BaseServiceImpl; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Map; @Slf4j @AllArgsConstructor @@ -70,4 +72,9 @@ public class WarehouseWayBillDetailServiceImpl extends BaseServiceImpl findWaybillOrderTotalWeightAndVolumeByWaybillNoList(List waybillNoList) { + return baseMapper.findWaybillOrderTotalWeightAndVolumeByWaybillNoList(waybillNoList); + } } From b1246242391a591957c9b5751ae58eb9a1ee9f27 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Thu, 24 Oct 2024 21:32:34 +0800 Subject: [PATCH 7/9] =?UTF-8?q?1.=E8=BF=90=E5=8D=95=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BC=98=E5=8C=96=202.=E5=B9=B2=E7=BA=BF?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=95=B0=E6=8D=AE=E9=99=90=E5=88=B6=203.?= =?UTF-8?q?=E5=B9=B2=E7=BA=BF=E5=BC=80=E5=8D=95=E8=BF=90=E5=8D=95=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=88=A4=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/TrunklineCarsLoadScanEntity.java | 21 +++ .../vo/ExportWarehouseWaybillVO.java | 61 +++++- .../mapper/TrunklineCarsLoadScanMapper.xml | 1 + .../service/impl/OpenOrderServiceImpl.java | 42 ++++- .../impl/TrunklineCarsLoadServiceImpl.java | 28 +++ .../mapper/WarehouseWaybillMapper.xml | 178 ++++++++++++++++-- 6 files changed, 303 insertions(+), 28 deletions(-) diff --git a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineCarsLoadScanEntity.java b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineCarsLoadScanEntity.java index e8ec3f7f3..c297dc00d 100644 --- a/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineCarsLoadScanEntity.java +++ b/blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineCarsLoadScanEntity.java @@ -154,4 +154,25 @@ public class TrunklineCarsLoadScanEntity extends TenantEntity { @ApiModelProperty(name = "顾客地址",notes = "") private String customerAddress; + /** 一级品类 */ + @ApiModelProperty(name = "一级品类",notes = "") + private String firsts; + + /** 二级品类 */ + @ApiModelProperty(name = "二级品类",notes = "") + private String senconds; + + /** 三级品类 */ + @ApiModelProperty(name = "三级品类",notes = "") + private String thirds; + + /** 物料编码 */ + @ApiModelProperty(name = "物料编码",notes = "") + private String materialCode; + + /** 物料名称 */ + @ApiModelProperty(name = "物料名称",notes = "") + private String materialName; + + } diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/ExportWarehouseWaybillVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/ExportWarehouseWaybillVO.java index f787258d1..dc73e0168 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/ExportWarehouseWaybillVO.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/ExportWarehouseWaybillVO.java @@ -18,6 +18,9 @@ public class ExportWarehouseWaybillVO implements Serializable { @ExcelProperty(value = "订单号") private String orderNo; + @ExcelProperty(value = "备注") + private String remark; + @ExcelProperty(value = "发站仓") private String departureWarehouseName; @@ -64,6 +67,12 @@ public class ExportWarehouseWaybillVO implements Serializable { @ExcelProperty(value = "货物名称") private String goodsName; + @ExcelProperty(value = "货物名称明细") + private String productNum; + + @ExcelProperty(value = "干线品类单价") + private String productPrice; + @ExcelProperty(value = "按件分摊") private BigDecimal costPiece; @@ -76,6 +85,9 @@ public class ExportWarehouseWaybillVO implements Serializable { @ExcelProperty(value = "总件数") private Integer totalCount; + @ExcelProperty(value = "签收数量") + private Integer signNum; + @ExcelProperty(value = "总重量") private BigDecimal totalWeight; @@ -142,13 +154,6 @@ public class ExportWarehouseWaybillVO implements Serializable { @ExcelProperty(value = "经办人") private String agent; - @ExcelProperty(value = "创建时间") - @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - private Date createTime; - - @ExcelProperty(value = "制单时间") - @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") - private Date documentMakingTime; @ExcelIgnore private Integer pickupCompleteOrNot; @@ -176,8 +181,40 @@ public class ExportWarehouseWaybillVO implements Serializable { @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") private Date freezeTime; + + @ExcelProperty(value = "审核人") + private String checkUserName; + + @ExcelProperty(value = "审核原因") + private String checkReson; + + @ExcelProperty(value = "审核备注") + private String checkRemark; + + @ExcelProperty(value = "审核时间") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date checkTime; + + + + @ExcelProperty(value = "签收人") + private String signUserName; + + @ExcelProperty(value = "复核人") + private String signCheckUserName; + + @ExcelProperty(value = "签收时间") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date signTime; + + @ExcelProperty(value = "复核时间") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date signCheckTime; + + @ExcelIgnore private Integer abolishStatus; + @ExcelProperty(value = "是否作废") private String abolishStatusStr; @@ -188,4 +225,14 @@ public class ExportWarehouseWaybillVO implements Serializable { @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") private Date abolishTime; + + @ExcelProperty(value = "创建时间") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ExcelProperty(value = "制单时间") + @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date documentMakingTime; + + } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml index f3a7d5cc1..b458ad8e7 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml @@ -182,6 +182,7 @@ select * from logpm_trunkline_cars_load_scan where is_deleted = 0 + and is_supple = 0 and load_id = #{param.loadId} diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java index 6ee57e13a..8e414ba13 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java @@ -477,6 +477,12 @@ public class OpenOrderServiceImpl implements IOpenOrderService { // while(!Objects.isNull(warehouseWaybillEntity)){ // waybillNo = basicdataCodeClient.getCodeByType(CodeNumConstant.WAYBILL, warehouseCode, ""); // } + }else{ + WarehouseWaybillEntity warehouseWaybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo); + if(!Objects.isNull(warehouseWaybillEntity)){ + log.warn("#############openWaybill: 运单号已存在 waybillNo={}", waybillNo); + return R.fail(405, "运单号已存在"); + } } Long departureWarehouseId = openOrderDTO.getDepartureWarehouseId(); Long destinationWarehouseId = openOrderDTO.getDestinationWarehouseId(); @@ -823,6 +829,12 @@ public class OpenOrderServiceImpl implements IOpenOrderService { //如果运单号为空则自动生成运单号 if (StringUtil.isBlank(waybillNo)) { waybillNo = basicdataCodeClient.getCodeByType(CodeNumConstant.WAYBILL, warehouseCode, ""); + }else{ + WarehouseWaybillEntity warehouseWaybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo); + if(!Objects.isNull(warehouseWaybillEntity)){ + log.warn("#############openZeroWaybill: 运单号已存在 waybillNo={}", waybillNo); + return R.fail(405, "运单号已存在"); + } } WarehouseWaybillEntity waybillEntity = new WarehouseWaybillEntity(); @@ -1758,6 +1770,14 @@ public class OpenOrderServiceImpl implements IOpenOrderService { long start = System.currentTimeMillis(); List importCustomizedOuPaiDTOS = EasyExcel.read(inputStream).head(ImportCustomizedOuPaiDTO.class).sheet(0).headRowNumber(1).doReadSync(); + //判断importCustomizedOuPaiDTOS中firstsName有值的数量 + long countWithMaterialName = importCustomizedOuPaiDTOS.stream() + .filter(dto -> StringUtil.isNotBlank(dto.getFirstsName())) + .count(); + if(NumberUtil.equals(countWithMaterialName,0)){ + log.warn("#################: 请使用定制品模版"); + return R.fail(405,"请使用定制品模版"); + } //排除pacakgeDetailExcelDTOS中的orderPackageCode为空的元素 importCustomizedOuPaiDTOS = importCustomizedOuPaiDTOS.stream().filter(item -> StringUtil.isNotBlank(item.getOrderPackageCode())).collect(Collectors.toList()); @@ -2095,8 +2115,18 @@ public class OpenOrderServiceImpl implements IOpenOrderService { InputStream inputStream = file.getInputStream(); + //读取inputStream中Excel的表头数据 List importStandardOuPaiDTOS = EasyExcel.read(inputStream).head(ImportStandardOuPaiDTO.class).sheet(0).headRowNumber(1).doReadSync(); + //判断importStandardOuPaiDTOS中materialName有值的数量 + long countWithMaterialName = importStandardOuPaiDTOS.stream() + .filter(dto -> StringUtil.isNotBlank(dto.getMaterialName())) + .count(); + if(NumberUtil.equals(countWithMaterialName,0)){ + log.warn("#################: 请使用标准品模版"); + return R.fail(405,"请使用标准品模版"); + } + //排除importStandardOuPaiDTOS中的orderPackageCode为空的元素 importStandardOuPaiDTOS = importStandardOuPaiDTOS.stream().filter(item -> StringUtil.isNotBlank(item.getOrderPackageCode())).collect(Collectors.toList()); @@ -2407,8 +2437,16 @@ public class OpenOrderServiceImpl implements IOpenOrderService { advanceDetailModel.setMaterialId(basicMaterialEntity.getId()); advanceDetailModel.setMaterialCode(materialCode); advanceDetailModel.setMaterialName(materialName); - advanceDetailModel.setWeight(new BigDecimal(basicMaterialEntity.getWeight())); - advanceDetailModel.setVolume(new BigDecimal(basicMaterialEntity.getVolume())); + String weight = basicMaterialEntity.getWeight(); + if(StringUtil.isBlank(weight)){ + weight = "0"; + } + String volume1 = basicMaterialEntity.getVolume(); + if(StringUtil.isBlank(volume1)){ + volume1 = "0"; + } + advanceDetailModel.setWeight(new BigDecimal(weight)); + advanceDetailModel.setVolume(new BigDecimal(volume1)); } // if (StringUtil.isNotBlank(materialCode) && StringUtil.isNotBlank(materialName)) { diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java index 57ce9811a..4c1b7e27c 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java @@ -3647,6 +3647,12 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl zeroDetailList = new ArrayList<>(); @@ -5652,6 +5664,17 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl loadScanEntityListHasData = loadScanEntityList.stream().filter(e -> e.getIsData() == 1).collect(Collectors.toList()); + //把loadScanEntityListHasData中所有元素的scanCode放入一个List + List scanCodeList = loadScanEntityListHasData.stream().map(TrunklineCarsLoadScanEntity::getScanCode).collect(Collectors.toList()); + FindParamterDTO findParamterDTO = new FindParamterDTO(); + findParamterDTO.setOrderPackageCodeList(scanCodeList); + findParamterDTO.setWarehouseId(warehouseId); + List parcelListEntityList = distributionParcelListClient.findListByOrderPackageCodeList(findParamterDTO); + //把parcelListEntityList中所有的orderPackageCode放入一个List + List orderPackageCodeList = parcelListEntityList.stream().map(DistributionParcelListEntity::getOrderPackageCode).collect(Collectors.toList()); + //把loadScanEntityListHasData中的元素通过orderPackageCodeList存在及过滤掉 + loadScanEntityListHasData = loadScanEntityListHasData.stream().filter(e -> !orderPackageCodeList.contains(e.getScanCode())).collect(Collectors.toList()); + //把loadScanEntityListHasData通过tray_code is null和tray_code is not null 分成两个新的list List loadScanEntityListHasDataNoTray = loadScanEntityListHasData.stream().filter(e -> StringUtil.isBlank(e.getTrayCode())).collect(Collectors.toList()); //把loadScanEntityListHasDataNoTray通过orderCode进行分组 @@ -7170,6 +7193,11 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl - select lww.*, + select lww.id id, + lww.brand brand, + lww.waybill_no waybillNo, + lww.order_no orderNo, + lww.consignee consignee, + lww.consignee_name consigneeName, + lww.consignee_mobile consigneeMobile, + lww.consignee_address consigneeAddress, + lww.shipper shipper, + lww.shipper_name shipperName, + lww.shipper_mobile shipperMobile, + lww.shipper_address shipperAddress, + lww.destination destination, + lww.departure departure, + lww.departure_warehouse_name departureWarehouseName, + lww.destination_warehouse_name destinationWarehouseName, + lww.delivery_way deliveryWay, + lww.customer_train customerTrain, + IFNULL(lww.return_status,0) returnStatus, + lww.remark remark, + lww.pay_type payType, + lww.pay_way payWay, + lww.x_pay xPay, + lww.d_pay dPay, + lww.h_pay hPay, + lww.y_pay yPay, + lww.service_type serviceType, + IFNULL(lww.update_status,0) updateStatus, + IFNULL(lww.check_status,0) checkStatus, + lww.check_reson checkReson, + lww.check_remark checkRemark, + lww.check_user_name checkUserName, + lww.check_time checkTime, + lww.cancle_check_remark cancleCheckRemark, + lww.cancle_check_user_name cancleCheckUserName, + lww.cancle_check_time cancleCheckTime, + lww.waybill_status waybillStatus, + lww.waybill_type waybillType, + lww.document_making_time openTime, + GROUP_CONCAT(lwwd.product_name) goodsName, + lww.total_count totalCount, + sum(lwwd.weight) totalWeight, + sum(lwwd.volume) totalVolume, + lww.x_pay+lww.d_pay+lww.h_pay+lww.y_pay totalFee, + sum(IFNULL(lwwd.freight_price,0)*lwwd.num+IFNULL(lwwd.pickup_price,0)*lwwd.num+IFNULL(lwwd.delivery_price,0)*lwwd.num) systemTotalFee, + lww.pickup_fee pickupFee, + lww.total_freight totalFreight, + lww.storage_fee+lww.warehouse_management_fee warehouseServiceFee, + lww.storage_fee storageFee, + lww.warehouse_management_fee warehouseManagementFee, + 0.00 warehouseSortingFee, + 0.00 warehouseOprationFee, + lww.delivery_fee+lww.handling_fee deliveryServiceFee, + lww.delivery_fee deliveryFee, + lww.handling_fee handlingFee, + 0.00 deliverySortingFee, + 0.00 deliveryUpfloorFee, + 0.00 deliveryMoveFee, + 0.00 deliveryLine, + 0.00 deliveryLineFee, + lww.other_fee otherFee, + lww.install_fee installFee, + lww.insurance_fee insuranceFee, + lww.claiming_value claimingValue, + lww.third_operation_fee thirdOperationFee, + lww.sign_num signNum, + lww.sign_user_name signUserName, + lww.sign_time signTime, + lww.sign_check_user_name signCheckUserName, + lww.sign_check_time signCheckTime, + lww.rebate rebate, GROUP_CONCAT(CONCAT(lwwd.product_name,'(',lwwd.num,')')) productNum, GROUP_CONCAT(CONCAT(lwwd.product_name,'(',lwwd.price,')')) productPrice from logpm_warehouse_waybill lww - left join logpm_warehouse_waybill_detail lwwd on lwwd.waybill_id = lww.id + left join logpm_warehouse_waybill_detail lwwd on lwwd.waybill_id = lww.id and lwwd.is_deleted = 0 where lww.is_deleted = 0 - and lww.waybill_no not in + and lww.waybill_no in #{item} @@ -372,7 +442,7 @@ lww.d_pay dPay, lww.h_pay hPay, lww.y_pay yPay, - lww.service_type serviceType, + lbc.type_service serviceType, IFNULL(lww.update_status,0) updateStatus, IFNULL(lww.check_status,0) checkStatus, lww.check_reson checkReson, @@ -387,8 +457,8 @@ lww.document_making_time openTime, lww.goods_name goodsName, lww.total_count totalCount, - lww.total_weight totalWeight, - lww.total_volume totalVolume, + sum(lwwd.weight) totalWeight, + sum(lwwd.volume) totalVolume, lww.x_pay+lww.d_pay+lww.h_pay+lww.y_pay totalFee, sum(IFNULL(lwwd.freight_price,0)*lwwd.num+IFNULL(lwwd.pickup_price,0)*lwwd.num+IFNULL(lwwd.delivery_price,0)*lwwd.num) systemTotalFee, lww.pickup_fee pickupFee, @@ -420,10 +490,10 @@ count(lwwd.id) goodsTypeCount from logpm_warehouse_waybill lww left join logpm_basicdata_client lbc on lbc.id = lww.consignee_id - left join logpm_warehouse_waybill_detail lwwd on lwwd.waybill_id = lww.id + left join logpm_warehouse_waybill_detail lwwd on lwwd.waybill_id = lww.id and lwwd.is_deleted = 0 where lww.is_deleted = 0 - and lww.waybill_no not in + and lww.waybill_no in #{item} @@ -620,10 +690,10 @@ lww.d_pay dPay, lww.h_pay hPay, lww.y_pay yPay, - case when lww.service_type='1' then '商配' - when lww.service_type='2' then '市配' - when lww.service_type='3' then '自提' - when lww.service_type='4' then '三方中转' + case when lbc.type_service='1' then '商配' + when lbc.type_service='2' then '市配' + when lbc.type_service='3' then '自提' + when lbc.type_service='4' then '三方中转' else '未知' end serviceType, CASE WHEN IFNULL(lww.update_status,0)=0 THEN '未改单' WHEN IFNULL(lww.update_status,0)=1 THEN '已改单' @@ -652,8 +722,8 @@ lww.document_making_time openTime, lww.goods_name goodsName, lww.total_count totalCount, - lww.total_weight totalWeight, - lww.total_volume totalVolume, + sum(lwwd.weight) totalWeight, + sum(lwwd.volume) totalVolume, lww.x_pay+lww.d_pay+lww.h_pay+lww.y_pay totalFee, sum(IFNULL(lwwd.freight_price,0)*lwwd.num+IFNULL(lwwd.pickup_price,0)*lwwd.num+IFNULL(lwwd.delivery_price,0)*lwwd.num) systemTotalFee, lww.pickup_fee pickupFee, @@ -685,10 +755,10 @@ count(lwwd.id) goodsTypeCount from logpm_warehouse_waybill lww left join logpm_basicdata_client lbc on lbc.id = lww.consignee_id - left join logpm_warehouse_waybill_detail lwwd on lwwd.waybill_id = lww.id + left join logpm_warehouse_waybill_detail lwwd on lwwd.waybill_id = lww.id and lwwd.is_deleted = 0 where lww.is_deleted = 0 - and lww.waybill_no not in + and lww.waybill_no in #{item} @@ -847,14 +917,84 @@