diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/trayallocation/TrayAllocationConstants.java b/blade-biz-common/src/main/java/org/springblade/common/constant/trayallocation/TrayAllocationConstants.java new file mode 100644 index 000000000..ea3898809 --- /dev/null +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/trayallocation/TrayAllocationConstants.java @@ -0,0 +1,25 @@ +package org.springblade.common.constant.trayallocation; + + +import org.springblade.common.constant.ModuleNameConstant; + +public class TrayAllocationConstants { + + + /** + * 清除包件上的托盘信息 + */ + public static final String WAREHOUSE_PRACL_CLEAR_TRAY_EXCHANGE = "warehouse.pracl.clear.tray.exchange" + ModuleNameConstant.DEVAUTH; + public static final String WAREHOUSE_PRACL_CLEAR_TRAY_QUEUE = "warehouse.pracl.clear.tray.queue" + ModuleNameConstant.DEVAUTH; + public static final String WAREHOUSE_PRACL_CLEAR_TRAY_ROUTINGKEY = "warehouse.pracl.clear.tray.key" + ModuleNameConstant.DEVAUTH; + + /** + * 清除包件上的库位信息 + */ + public static final String WAREHOUSE_PRACL_CLEAR_ALLOCATION_EXCHANGE = "warehouse.pracl.clear.allocation.exchange" + ModuleNameConstant.DEVAUTH; + public static final String WAREHOUSE_PRACL_CLEAR_ALLOCATION_QUEUE = "warehouse.pracl.clear.allocation.queue" + ModuleNameConstant.DEVAUTH; + public static final String WAREHOUSE_PRACL_CLEAR_ALLOCATION_ROUTINGKEY = "warehouse.pracl.clear.allocation.key" + ModuleNameConstant.DEVAUTH; + + + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/warehouse/AllocationInfoListener.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/warehouse/AllocationInfoListener.java new file mode 100644 index 000000000..8215c82de --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/warehouse/AllocationInfoListener.java @@ -0,0 +1,63 @@ +package com.logpm.distribution.receiver.warehouse; + + +import cn.hutool.json.JSONUtil; +import com.logpm.distribution.mapper.DistributionParcelListMapper; +import com.rabbitmq.client.Channel; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.springblade.common.constant.trayallocation.TrayAllocationConstants; +import org.springframework.amqp.core.ExchangeTypes; +import org.springframework.amqp.rabbit.annotation.Exchange; +import org.springframework.amqp.rabbit.annotation.Queue; +import org.springframework.amqp.rabbit.annotation.QueueBinding; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.amqp.support.AmqpHeaders; +import org.springframework.messaging.handler.annotation.Header; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +@Slf4j +@Component +@AllArgsConstructor +public class AllocationInfoListener { + + private final DistributionParcelListMapper distributionParcelListMapper; + + @RabbitListener(bindings = @QueueBinding( + value = @Queue(name = TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_ALLOCATION_QUEUE, durable = "true"), + exchange = @Exchange(name = TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_ALLOCATION_EXCHANGE, type = ExchangeTypes.FANOUT) + ), ackMode = "MANUAL") + public void clearPraclAllocation(String msg, Channel channel, @Header(AmqpHeaders.DELIVERY_TAG) long tag) { + + if(StringUtils.isNotBlank(msg)){ + + List ids = JSONUtil.toList(msg, Long.class); + //把ids每200个分组 + List> partitions = new ArrayList<>(); + for (int i = 0; i < ids.size(); i += 200) { + partitions.add(ids.subList(i, Math.min(i + 200, ids.size()))); + } + + partitions.forEach(clearTrayList -> { + log.info("############clearPraclAllocation: 当前处理的ids {}",clearTrayList); + + distributionParcelListMapper.clearAllocationByIds(clearTrayList); + }); + + }else{ + log.warn("#########clearPraclAllocation: 消息数据为空 msg={}",msg); + } + + try { + channel.basicAck(tag, false); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/warehouse/TrayInfoListener.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/warehouse/TrayInfoListener.java new file mode 100644 index 000000000..eed093827 --- /dev/null +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/warehouse/TrayInfoListener.java @@ -0,0 +1,63 @@ +package com.logpm.distribution.receiver.warehouse; + + +import cn.hutool.json.JSONUtil; +import com.logpm.distribution.mapper.DistributionParcelListMapper; +import com.rabbitmq.client.Channel; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.springblade.common.constant.trayallocation.TrayAllocationConstants; +import org.springframework.amqp.core.ExchangeTypes; +import org.springframework.amqp.rabbit.annotation.Exchange; +import org.springframework.amqp.rabbit.annotation.Queue; +import org.springframework.amqp.rabbit.annotation.QueueBinding; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.amqp.support.AmqpHeaders; +import org.springframework.messaging.handler.annotation.Header; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +@Slf4j +@Component +@AllArgsConstructor +public class TrayInfoListener { + + private final DistributionParcelListMapper distributionParcelListMapper; + + @RabbitListener(bindings = @QueueBinding( + value = @Queue(name = TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_TRAY_QUEUE, durable = "true"), + exchange = @Exchange(name = TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_TRAY_EXCHANGE, type = ExchangeTypes.FANOUT) + ), ackMode = "MANUAL") + public void clearPraclTray(String msg, Channel channel, @Header(AmqpHeaders.DELIVERY_TAG) long tag) { + + if(StringUtils.isNotBlank(msg)){ + + List ids = JSONUtil.toList(msg, Long.class); + //把ids每200个分组 + List> partitions = new ArrayList<>(); + for (int i = 0; i < ids.size(); i += 200) { + partitions.add(ids.subList(i, Math.min(i + 200, ids.size()))); + } + + partitions.forEach(clearTrayList -> { + log.info("############clearPraclTray: 当前处理的ids {}",clearTrayList); + + distributionParcelListMapper.clearPalletByIds(clearTrayList); + }); + + }else{ + log.warn("#########clearPraclTray: 消息数据为空 msg={}",msg); + } + + try { + channel.basicAck(tag, false); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + +} 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 7b0df6a3e..dfb086c4d 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 @@ -17,6 +17,7 @@ package com.logpm.distribution.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -40,6 +41,8 @@ import com.logpm.distribution.mapper.DistributionParcelListMapper; import com.logpm.distribution.mapper.DistributionStockArticleMapper; import com.logpm.distribution.service.*; import com.logpm.distribution.vo.*; +import com.logpm.factorydata.feign.IFactoryDataClient; +import com.logpm.factorydata.vo.SendMsg; import com.logpm.trunkline.feign.ITrunklineAdvanceDetailClient; import com.logpm.trunkline.feign.ITrunklinePackageTrackLogClient; import com.logpm.warehouse.entity.WarehouseConfigEntity; @@ -55,6 +58,7 @@ import org.springblade.common.constant.orderpackage.OrderPackageLoadingStatusCon import org.springblade.common.constant.orderpackage.OrderPackageReservationStatusConstant; import org.springblade.common.constant.orderpackage.OrderPackageStatusConstant; import org.springblade.common.constant.reservation.ReservationPackageStatusConstant; +import org.springblade.common.constant.trayallocation.TrayAllocationConstants; import org.springblade.common.exception.CustomerException; import org.springblade.common.node.PackageNode; import org.springblade.common.utils.CommonUtil; @@ -78,6 +82,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -145,6 +150,9 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl selectDistributionParcelListPage(IPage page, DistributionParcelListVO distributionParcelList) { @@ -1332,7 +1340,18 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl clearTrayList) { - baseMapper.clearPalletByIds(clearTrayList); + try{ + baseMapper.clearPalletByIds(clearTrayList); + }catch (Exception e){ + log.error("清空包件托盘异常",e); + factoryDataClient.sendMessage(SendMsg.builder() + .exchange(TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_TRAY_EXCHANGE) + .routingKey(TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_TRAY_ROUTINGKEY) + .message(JSONUtil.toJsonStr(clearTrayList)) + .delay(10000) + .build()); + } + } @Override @@ -1342,7 +1361,20 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl clearTrayList) { - baseMapper.clearAllocationByIds(clearTrayList); + + try{ + baseMapper.clearAllocationByIds(clearTrayList); + }catch (Exception e){ + log.error("清空包件托盘异常",e); + factoryDataClient.sendMessage(SendMsg.builder() + .exchange(TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_ALLOCATION_EXCHANGE) + .routingKey(TrayAllocationConstants.WAREHOUSE_PRACL_CLEAR_ALLOCATION_ROUTINGKEY) + .message(JSONUtil.toJsonStr(clearTrayList)) + .delay(10000) + .build()); + } + + } @Override diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java index 9d8426064..5c8a3d03b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java @@ -872,7 +872,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVOByStock(deliveryListEntity, pushList, OperatModeConstant.CLERK); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVOByStock(deliveryListEntity, pushList, OperatModeConstant.CLERK, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); } @@ -1354,6 +1355,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVOByZero(deliveryListEntity, pushList,OperatModeConstant.CLERK); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVOByZero(deliveryListEntity, pushList,OperatModeConstant.CLERK, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); @@ -2885,7 +2887,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVO(deliveryListEntity, distributionReservationEntity, pushList, OperatModeConstant.SCAN); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVO(deliveryListEntity, distributionReservationEntity, pushList, OperatModeConstant.SCAN, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); @@ -3206,7 +3208,8 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl buildDistributionSignforVOByStock(DistributionDeliveryListEntity distributionDeliveryListEntity, List pushList, String operatMode) { + private NodeFanoutMsg buildDistributionSignforVOByStock(DistributionDeliveryListEntity distributionDeliveryListEntity, + List pushList, String operatMode,Date signforTime) { NodeFanoutMsg nodeFanoutMsg = new NodeFanoutMsg(); nodeFanoutMsg.setBizOperation(BizOperationEnums.ADD); @@ -3214,7 +3217,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl buildDistributionSignforVO(DistributionDeliveryListEntity distributionDeliveryListEntity, DistributionReservationEntity distributionReservationEntity, List pushList, String operatMode) { + private NodeFanoutMsg buildDistributionSignforVO(DistributionDeliveryListEntity distributionDeliveryListEntity, DistributionReservationEntity distributionReservationEntity, List pushList, String operatMode, Date signforTime) { NodeFanoutMsg nodeFanoutMsg = new NodeFanoutMsg(); nodeFanoutMsg.setBizOperation(BizOperationEnums.ADD); @@ -3281,7 +3284,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVO(deliveryListEntity, distributionReservationEntity, pushDatas, OperatModeConstant.CLERK); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVO(deliveryListEntity, distributionReservationEntity, pushDatas, OperatModeConstant.CLERK, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); @@ -3788,6 +3792,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVO(distributionDeliveryListEntity, reservationEntity, pushList, OperatModeConstant.SCAN); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVO(distributionDeliveryListEntity, reservationEntity, pushList, OperatModeConstant.SCAN, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); return Resp.scanSuccess("操作成功", s); @@ -4310,6 +4315,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl distributionLoadscanEntities = distributionLoadscanMapper.selectList(new QueryWrapper().lambda() @@ -4366,7 +4372,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVOByStock(deliveryListEntity, pushList, OperatModeConstant.SCAN); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVOByStock(deliveryListEntity, pushList, OperatModeConstant.SCAN, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); @@ -6945,6 +6951,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVOByZero(deliveryListEntity, pushList, OperatModeConstant.SCAN); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVOByZero(deliveryListEntity, pushList, OperatModeConstant.SCAN, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); @@ -7192,7 +7199,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl buildDistributionSignforVOByZero(DistributionDeliveryListEntity distributionDeliveryListEntity, List pushList,String operatMode) { + private NodeFanoutMsg buildDistributionSignforVOByZero(DistributionDeliveryListEntity distributionDeliveryListEntity, List pushList,String operatMode, Date signforTime) { NodeFanoutMsg nodeFanoutMsg = new NodeFanoutMsg(); nodeFanoutMsg.setBizOperation(BizOperationEnums.ADD); @@ -7200,7 +7207,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl nodeFanoutMsg = buildDistributionSignforVOByStock(deliveryListEntity, pushInventoryList, OperatModeConstant.SCAN); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVOByStock(deliveryListEntity, pushInventoryList, OperatModeConstant.SCAN, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); } if (!pushList.isEmpty()) { // 构建新作业节点回传 - NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVO(deliveryListEntity, reservationEntity, pushList, OperatModeConstant.SCAN); + NodeFanoutMsg nodeFanoutMsg = buildDistributionSignforVO(deliveryListEntity, reservationEntity, pushList, OperatModeConstant.SCAN, signforTime); distributionNodeWorkService.signFor(nodeFanoutMsg, AuthUtil.getUser()); } if (!orderCodes.isEmpty()) { diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java index 3fb02a2b7..cbc1181b1 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/dto/ReportTimeDTO.java @@ -39,6 +39,8 @@ public class ReportTimeDTO implements Serializable { private String destinationWarehouseName; private String trainNumber; private String loadCode; + private String loadingLoadCode; + private String unloadLoadCode; private String openTimeStartStr; diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml index fe6929ba0..57e80d87d 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportTimeMapper.xml @@ -1356,7 +1356,8 @@ lww.departure_warehouse_name departureWarehouseName, lww.destination_warehouse_name destinationWarehouseName, GROUP_CONCAT(DISTINCT ltad.train_number) trainNumber, - GROUP_CONCAT(DISTINCT IFNULL(ltcls.load_code,ltclsm.load_code)) loadCode, + GROUP_CONCAT(DISTINCT ltcls.load_code) loadingLoadCode, + GROUP_CONCAT(DISTINCT ltclsm.load_code) unloadLoadCode, count(ltad.id) totalNum, min(ltad.create_time) createTime, min(ldpls.create_time) startIncomingTime, @@ -1387,7 +1388,7 @@ left join logpm_trunkline_cars_load_scan ltclsm on ltclsm.scan_code = ldplm.order_package_code and ltclsm.unload_node_id = ldplm.warehouse_id left join logpm_trunkline_cars_load_line ltcllm on ltcllm.load_id = ltclsm.load_id and ltcllm.node_id = ltclsm.unload_node_id left join logpm_quality_deliver lqd on lqd.order_package_code = ltad.order_package_code and lqd.retention_time is null - left join logpm_reportconfig_order_all oat on oat.departure_warehouse_id = lww.departure_warehouse_id and oat.destination_warehouse_id = lww.destination_warehouse_id and oat.brand = lww.brand + left join logpm_reportconfig_order_all oat on oat.departure_warehouse_id = lww.departure_warehouse_id and oat.destination_warehouse_id = lww.destination_warehouse_id where ltad.waybill_id is not null and ltad.create_time > '2024-10-22 00:00:00' and lww.departure_warehouse_id != lww.destination_warehouse_id @@ -1454,8 +1455,11 @@ and GROUP_CONCAT(DISTINCT ltad.train_number) like concat('%',#{param.trainNumber},'%') - - and GROUP_CONCAT(DISTINCT IFNULL(ltcls.load_code,ltclsm.load_code)) like concat('%',#{param.loadCode},'%') + + and GROUP_CONCAT(DISTINCT ltcls.load_code) like concat('%',#{param.loadingLoadCode},'%') + + + and GROUP_CONCAT(DISTINCT ltclsm.load_code) like concat('%',#{param.unloadLoadCode},'%') @@ -1470,7 +1474,8 @@ lww.departure_warehouse_name departureWarehouseName, lww.destination_warehouse_name destinationWarehouseName, GROUP_CONCAT(DISTINCT ltad.train_number) trainNumber, - GROUP_CONCAT(DISTINCT IFNULL(ltcls.load_code,ltclsm.load_code)) loadCode, + GROUP_CONCAT(DISTINCT ltcls.load_code) loadingLoadCode, + GROUP_CONCAT(DISTINCT ltclsm.load_code) unloadLoadCode, count(ltad.id) totalNum, min(ltad.create_time) createTime, min(ldpls.create_time) startIncomingTime, @@ -1501,7 +1506,7 @@ left join logpm_trunkline_cars_load_scan ltclsm on ltclsm.scan_code = ldplm.order_package_code and ltclsm.unload_node_id = ldplm.warehouse_id left join logpm_trunkline_cars_load_line ltcllm on ltcllm.load_id = ltclsm.load_id and ltcllm.node_id = ltclsm.unload_node_id left join logpm_quality_deliver lqd on lqd.order_package_code = ltad.order_package_code and lqd.retention_time is null - left join logpm_reportconfig_order_all oat on oat.departure_warehouse_id = lww.departure_warehouse_id and oat.destination_warehouse_id = lww.destination_warehouse_id and oat.brand = lww.brand + left join logpm_reportconfig_order_all oat on oat.departure_warehouse_id = lww.departure_warehouse_id and oat.destination_warehouse_id = lww.destination_warehouse_id where ltad.waybill_id is not null and ltad.create_time > '2024-10-22 00:00:00' and lww.departure_warehouse_id != lww.destination_warehouse_id @@ -1568,8 +1573,11 @@ and GROUP_CONCAT(DISTINCT ltad.train_number) like concat('%',#{param.trainNumber},'%') - - and GROUP_CONCAT(DISTINCT IFNULL(ltcls.load_code,ltclsm.load_code)) like concat('%',#{param.loadCode},'%') + + and GROUP_CONCAT(DISTINCT ltcls.load_code) like concat('%',#{param.loadingLoadCode},'%') + + + and GROUP_CONCAT(DISTINCT ltclsm.load_code) like concat('%',#{param.unloadLoadCode},'%') 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 687a7fd47..c22259724 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 @@ -11707,14 +11707,17 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl