From 0f103454957f1c36b90e8b8c28da6284821b29a3 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Mon, 18 Mar 2024 19:50:13 +0800 Subject: [PATCH] =?UTF-8?q?1.=E8=A1=A5=E4=B8=81-=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=BA=93=E4=BD=8D=E6=95=B0=E6=8D=AE=202.?= =?UTF-8?q?=E5=9C=A8=E5=BA=93=E8=BF=90=E5=8D=95=E4=BF=AE=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E9=9B=B6=E6=8B=85=E8=BF=90=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/RabbitConstant.java | 5 + .../trunkline/vo/CarsLoadOrderInfoVO.java | 2 + blade-service/logpm-patch/pom.xml | 6 +- .../patch/config/RabbitMqConfiguration.java | 113 ++++++++++++++++++ .../patch/receiver/SyncUpdownDataHandler.java | 60 ++++++++++ .../impl/SyncOrderInfoServiceImpl.java | 39 +++--- .../src/main/resources/application-dev.yml | 27 +++++ .../src/main/resources/application-prod.yml | 27 +++++ .../src/main/resources/application-test.yml | 27 +++++ .../controller/CarsLoadController.java | 34 ++++++ .../mapper/TrunklineCarsLoadScanMapper.java | 2 + .../mapper/TrunklineCarsLoadScanMapper.xml | 8 ++ .../mapper/TrunklineCarsOrderMapper.xml | 1 + .../ITrunklineCarsLoadScanService.java | 3 + .../service/ITrunklineCarsLoadService.java | 2 + .../impl/TrunklineCarsLoadLogServiceImpl.java | 4 +- .../TrunklineCarsLoadScanServiceImpl.java | 5 + .../impl/TrunklineCarsLoadServiceImpl.java | 17 +++ .../mapper/WarehouseWaybillMapper.xml | 1 + 19 files changed, 361 insertions(+), 22 deletions(-) create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/config/RabbitMqConfiguration.java create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/receiver/SyncUpdownDataHandler.java diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/RabbitConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/RabbitConstant.java index 0bf655650..8cc0836fd 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/RabbitConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/RabbitConstant.java @@ -144,4 +144,9 @@ public interface RabbitConstant { String TRUNKLINE_UNLOAD_CONFIRM_EXCHANGE = "trunkline_unload_confirm_exchange" + ModuleNameConstant.DEVAUTH; String TRUNKLINE_UNLOAD_CONFIRM_ROUTING = "trunkline_unload_confirm_routing" + ModuleNameConstant.DEVAUTH; + /****************同步老系统库位数据***************/ + String SYNC_OLD_UPDOWN_DATA_QUEUE = "sync_old_updown_data_queue" + ModuleNameConstant.DEVAUTH; + String SYNC_OLD_UPDOWN_DATA_EXCHANGE = "sync_old_updown_data_exchange" + ModuleNameConstant.DEVAUTH; + String SYNC_OLD_UPDOWN_DATA_ROUTING = "sync_old_updown_data_routing" + ModuleNameConstant.DEVAUTH; + } 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 4dd8b1cfa..a5ca0b7e5 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 @@ -19,4 +19,6 @@ public class CarsLoadOrderInfoVO implements Serializable { private BigDecimal volume; private BigDecimal orderFreight; + private String checkUserName;//审核人员 + } diff --git a/blade-service/logpm-patch/pom.xml b/blade-service/logpm-patch/pom.xml index 8bc35f33e..6b0ef520b 100644 --- a/blade-service/logpm-patch/pom.xml +++ b/blade-service/logpm-patch/pom.xml @@ -75,7 +75,11 @@ 3.2.0.RELEASE compile - + + + org.springframework.boot + spring-boot-starter-amqp + diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/config/RabbitMqConfiguration.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/config/RabbitMqConfiguration.java new file mode 100644 index 000000000..6cba8bca7 --- /dev/null +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/config/RabbitMqConfiguration.java @@ -0,0 +1,113 @@ +package com.logpm.patch.config; + +import com.alibaba.nacos.shaded.com.google.common.collect.Maps; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.RabbitConstant; +import org.springframework.amqp.core.*; +import org.springframework.amqp.rabbit.connection.ConnectionFactory; +import org.springframework.amqp.rabbit.connection.CorrelationData; +import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.util.Map; + +/** + * RabbitMQ配置,主要是配置队列,如果提前存在该队列,可以省略本配置类 + * + * @author yangkai.shen + */ +@Slf4j +@Configuration +public class RabbitMqConfiguration { + + @Bean + public RabbitTemplate createRabbitTemplate(ConnectionFactory connectionFactory) { + RabbitTemplate template = new RabbitTemplate(); + template.setConnectionFactory(connectionFactory); + template.setMandatory(true); + template.setConfirmCallback(new RabbitTemplate.ConfirmCallback() { + @Override + public void confirm(CorrelationData correlationData, boolean b, String s) { + System.out.println("确认回调-相关数据:" + correlationData); + System.out.println("确认回调-确认情况:" + b); + System.out.println("确认回调-原因:" + s); +// Long id = Long.parseLong(correlationData.getId()); +// UpdateWrapper updateWrapper = new UpdateWrapper<>(); +// if(b){ +// //修改处理日志为已处理 +// updateWrapper.set("status",0) +// .eq("id",id); +// +// }else{ +// //修改处理日志为已处理 +// updateWrapper.set("status",2) +// .eq("id",id); +// } +// panOrderStatusLogService.update(updateWrapper); + } + }); + + template.setReturnsCallback(new RabbitTemplate.ReturnsCallback() { + @Override + public void returnedMessage(ReturnedMessage returnedMessage) { + + + if ("mt_business_data_2_factory_exchange".equals(returnedMessage.getExchange()) || "mt_business_data_clerk_check_2_factory_exchange".equals(returnedMessage.getExchange())) { + return; + } + + System.out.println("返回回调-消息:" + returnedMessage.getMessage()); + System.out.println("返回回调-回应码:" + returnedMessage.getReplyCode()); + System.out.println("返回回调-回应信息:" + returnedMessage.getReplyText()); + System.out.println("返回回调-交换机:" + returnedMessage.getExchange()); + System.out.println("返回回调-路由键:" + returnedMessage.getRoutingKey()); + } + }); + return template; + } + +// @Bean +// public DirectExchange errorMessageExchange() { +// return new DirectExchange(RabbitConstant.ERROR_EXCHANGE); +// } +// +// @Bean +// public Queue errorQueue() { +// return new Queue(RabbitConstant.ERROR_QUEUE, true); +// } +// +// @Bean +// public Binding errorBinding(Queue errorQueue, DirectExchange errorMessageExchange) { +// return BindingBuilder.bind(errorQueue).to(errorMessageExchange).with(RabbitConstant.ERROR_ROUTING); +// } +// +// /** +// * 消费失败队列 +// * +// * @param rabbitTemplate +// * @return +// */ +// @Bean +// public MessageRecoverer republishMessageRecoverer(RabbitTemplate rabbitTemplate) { +// return new RepublishMessageRecoverer(rabbitTemplate, RabbitConstant.ERROR_EXCHANGE, RabbitConstant.ERROR_ROUTING); +// } + + + @Bean + public Queue syncOldUpdownDataQueue() { + return new Queue(RabbitConstant.SYNC_OLD_UPDOWN_DATA_QUEUE, true); + } + + @Bean + public CustomExchange syncOldUpdownDataExchange() { + Map args = Maps.newHashMap(); + args.put("x-delayed-type", "direct"); + return new CustomExchange(RabbitConstant.SYNC_OLD_UPDOWN_DATA_EXCHANGE, "x-delayed-message", true, false, args); + } + + @Bean + public Binding syncOldUpdownDataBinding(Queue syncOldUpdownDataQueue, CustomExchange syncOldUpdownDataExchange) { + return BindingBuilder.bind(syncOldUpdownDataQueue).to(syncOldUpdownDataExchange).with(RabbitConstant.SYNC_OLD_UPDOWN_DATA_ROUTING).noargs(); + } +} diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/receiver/SyncUpdownDataHandler.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/receiver/SyncUpdownDataHandler.java new file mode 100644 index 000000000..dc8d9241f --- /dev/null +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/receiver/SyncUpdownDataHandler.java @@ -0,0 +1,60 @@ +package com.logpm.patch.receiver; + +import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient; +import com.rabbitmq.client.Channel; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.RabbitConstant; +import org.springframework.amqp.core.Message; +import org.springframework.amqp.rabbit.annotation.RabbitHandler; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.Map; + + +/** + * 获取订单数据 处理器 + * + * @author yangkai.shen + */ +@Slf4j +@RabbitListener(queues = RabbitConstant.SYNC_OLD_UPDOWN_DATA_QUEUE) +@Component +public class SyncUpdownDataHandler { + + @Autowired + private IWarehouseUpdownTypeClient warehouseUpdownTypeClient; + + @RabbitHandler + public void dealWithDataHandler(Map map, Message message, Channel channel) throws IOException { + // 如果手动ACK,消息会被监听消费,但是消息在队列中依旧存在,如果 未配置 acknowledge-mode 默认是会在消费完毕后自动ACK掉 + log.info("##################dealWithDataHandler: 处理在库订单数据到新系统"); + String code = (String) map.get("code"); + Long locationId = (Long) map.get("locationId"); + Long warehouseId = (Long) map.get("warehouseId"); + Integer type = (Integer) map.get("type"); + + if(type == 4){ + //整托上架 + boolean a=warehouseUpdownTypeClient.upShelfTray(code,locationId,warehouseId); + if(a){ + log.info("#############syncUpdownData: 上架托盘成功 trayCode={} locationId={}",code,locationId); + }else{ + log.error("#############syncUpdownData: XXXX上架托盘失败 trayCode={} locationId={}",code,locationId); + } + }else{ + boolean a=warehouseUpdownTypeClient.upShelfPackage(code,locationId,warehouseId); + if(a){ + log.info("#############syncUpdownData: 上架包件成功 orderPackageCode={} locationId={}",code,locationId); + }else{ + log.error("#############syncUpdownData: XXXX上架包件失败 orderPackageCode={} locationId={}",code,locationId); + } + } + } + + + + +} diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java index 60a0446c9..710849bfb 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncOrderInfoServiceImpl.java @@ -34,6 +34,7 @@ import com.logpm.warehouse.feign.IWarehouseWaybillClient; import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.RabbitConstant; import org.springblade.common.constant.TenantNum; import org.springblade.common.constant.order.*; import org.springblade.common.constant.orderpackage.*; @@ -42,6 +43,8 @@ import org.springblade.common.utils.CommonUtil; import org.springblade.core.redis.cache.BladeRedis; import org.springblade.core.tool.utils.ObjectUtil; import org.springblade.core.tool.utils.StringUtil; +import org.springframework.amqp.rabbit.connection.CorrelationData; +import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -89,6 +92,9 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService { private final IWarehouseMappingDataService warehouseMappingDataService; private final IBasicdataCategoryClient categoryClient; + private final RabbitTemplate rabbitTemplate; + + @Transactional(rollbackFor = Exception.class) @Override public void handleData(List orderCodeList,Integer oldWarehouseId,Long newWarehouseId,String tableName,Integer inventoryId) { @@ -173,33 +179,28 @@ public class SyncOrderInfoServiceImpl implements ISyncOrderInfoService { List orderLocationEntityList = orderLocationClient.findListByLocationId(locationId.intValue()); for (OrderLocationEntity orderLocationEntity:orderLocationEntityList){ Integer type = orderLocationEntity.getType(); + Integer orderLocationId = orderLocationEntity.getId(); + String code = null; if(type == 4){ //整托上架 Integer trayId = orderLocationEntity.getTrayId(); - String trayCode = "T"+trayId; - boolean a=warehouseUpdownTypeClient.upShelfTray(trayCode,locationId,newWarehouseId); - if(a){ - log.info("#############syncUpdownData: 上架托盘成功 trayCode={} locationId={}",trayCode,locationId); - }else{ - log.error("#############syncUpdownData: XXXX上架托盘失败 trayCode={} locationId={}",trayCode,locationId); - } + code = "T"+trayId; }else{ - String orderPackageCode = orderLocationEntity.getUnitNo(); - boolean a=warehouseUpdownTypeClient.upShelfPackage(orderPackageCode,locationId,newWarehouseId); - if(a){ - log.info("#############syncUpdownData: 上架包件成功 orderPackageCode={} locationId={}",orderPackageCode,locationId); - }else{ - log.error("#############syncUpdownData: XXXX上架包件失败 orderPackageCode={} locationId={}",orderPackageCode,locationId); - } - + code = orderLocationEntity.getUnitNo(); } - + Map map = new HashMap<>(); + map.put("messageId", CommonUtil.getUUID()); + map.put("code", code); + map.put("locationId", locationId); + map.put("warehouseId", newWarehouseId); + map.put("type", type); + map.put("createTime", new Date().getTime()); + map.put("flagType", "OrderStatusLog"); + //将消息携带绑定键值 + rabbitTemplate.convertAndSend(RabbitConstant.SYNC_OLD_UPDOWN_DATA_EXCHANGE, RabbitConstant.SYNC_OLD_UPDOWN_DATA_ROUTING, map, new CorrelationData(String.valueOf(orderLocationId))); } - - } - } @Override diff --git a/blade-service/logpm-patch/src/main/resources/application-dev.yml b/blade-service/logpm-patch/src/main/resources/application-dev.yml index d9767d46a..36a4e5360 100644 --- a/blade-service/logpm-patch/src/main/resources/application-dev.yml +++ b/blade-service/logpm-patch/src/main/resources/application-dev.yml @@ -10,6 +10,33 @@ server: # password: ${blade.datasource.dev.password} spring: + #rabbitmq配置 + rabbitmq: + host: 192.168.2.46 + port: 5672 + username: admin + password: admin + #虚拟host 可以不设置,使用server默认host + virtual-host: / + #确认消息已发送到队列(Queue) + publisher-returns: true + publisher-confirm-type: correlated + # 手动提交消息 + listener: + simple: + acknowledge-mode: auto + default-requeue-rejected: false + retry: + enabled: true # 开启消费者失败重试 + initial-interval: 1000 # 初识的失败等待时长为1秒 + multiplier: 1 # 失败的等待时长倍数,下次等待时长 = multiplier * last-interval + max-attempts: 3 # 最大重试次数 + stateless: true # true无状态;false有状态。如果业务中包含事务,这里改为false + direct: + acknowledge-mode: manual + template: + mandatory: true + #排除DruidDataSourceAutoConfigure autoconfigure: exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure diff --git a/blade-service/logpm-patch/src/main/resources/application-prod.yml b/blade-service/logpm-patch/src/main/resources/application-prod.yml index a1cd4138d..3de00a5c8 100644 --- a/blade-service/logpm-patch/src/main/resources/application-prod.yml +++ b/blade-service/logpm-patch/src/main/resources/application-prod.yml @@ -10,6 +10,33 @@ server: # password: ${blade.datasource.prod.password} spring: + #rabbitmq配置 + rabbitmq: + host: 172.16.128.145 + port: 5672 + username: admin + password: Slwk@123654 + #虚拟host 可以不设置,使用server默认host + virtual-host: / + #确认消息已发送到队列(Queue) + publisher-returns: true + publisher-confirm-type: correlated + # 手动提交消息 + listener: + simple: + acknowledge-mode: auto + default-requeue-rejected: false + retry: + enabled: true # 开启消费者失败重试 + initial-interval: 1000 # 初识的失败等待时长为1秒 + multiplier: 1 # 失败的等待时长倍数,下次等待时长 = multiplier * last-interval + max-attempts: 3 # 最大重试次数 + stateless: true # true无状态;false有状态。如果业务中包含事务,这里改为false + direct: + acknowledge-mode: manual + template: + mandatory: true + #排除DruidDataSourceAutoConfigure autoconfigure: exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure diff --git a/blade-service/logpm-patch/src/main/resources/application-test.yml b/blade-service/logpm-patch/src/main/resources/application-test.yml index f68a73acf..51d73fdf2 100644 --- a/blade-service/logpm-patch/src/main/resources/application-test.yml +++ b/blade-service/logpm-patch/src/main/resources/application-test.yml @@ -10,6 +10,33 @@ server: # password: ${blade.datasource.test.password} spring: + #rabbitmq配置 + rabbitmq: + host: 192.168.2.110 + port: 5672 + username: admin + password: Slwk@123654 + #虚拟host 可以不设置,使用server默认host + virtual-host: / + #确认消息已发送到队列(Queue) + publisher-returns: true + publisher-confirm-type: correlated + # 手动提交消息 + listener: + simple: + acknowledge-mode: auto + default-requeue-rejected: false + retry: + enabled: true # 开启消费者失败重试 + initial-interval: 1000 # 初识的失败等待时长为1秒 + multiplier: 1 # 失败的等待时长倍数,下次等待时长 = multiplier * last-interval + max-attempts: 3 # 最大重试次数 + stateless: true # true无状态;false有状态。如果业务中包含事务,这里改为false + direct: + acknowledge-mode: manual + template: + mandatory: true + #排除DruidDataSourceAutoConfigure autoconfigure: exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java index 991c39c8f..62fa1e18f 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/CarsLoadController.java @@ -2109,4 +2109,38 @@ public class CarsLoadController { } } + + @ResponseBody + @PostMapping("/findCostShareBefore") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "查询成本分摊之前异常列表", notes = "传入loadCarsDTO") + public R findCostShareBefore(@RequestBody LoadCarsDTO loadCarsDTO) { + String method = "############findCostShareBefore: "; + log.info(method + "请求参数{}", loadCarsDTO); + Long loadId = loadCarsDTO.getLoadId(); + try{ + + //当前登录人选择的仓库 + BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); + if(Objects.isNull(myCurrentWarehouse)){ + log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse); + return R.fail(405,"仓库信息为空"); + } + loadCarsDTO.setWarehouseId(myCurrentWarehouse.getId()); + if(Objects.isNull(loadId)){ + log.warn(method+"配载id为空 loadId={}",loadId); + return R.fail(405,"配载id为空"); + } + + return carsLoadService.findCostShareBefore(loadId); + }catch (CustomerException e){ + log.error(e.message,e); + return R.fail(e.code,e.message); + }catch (Exception e){ + log.error(method+"系统异常",e); + return R.fail(500,"系统异常"); + } + } + + } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java index d294c9621..56b5439ee 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java @@ -94,4 +94,6 @@ public interface TrunklineCarsLoadScanMapper extends BaseMapper findArriveLoadScanWaybillList(@Param("loadId") Long loadId, @Param("nodeId") Long nodeId); List findUnloadLoadScanWaybillList(@Param("loadId") Long loadId, @Param("nodeId") Long nodeId); + + List findListNoDataByLoadId(@Param("loadId") Long loadId); } 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 bd8f1757e..7fc2c6123 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 @@ -445,4 +445,12 @@ group by waybill_no + + diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsOrderMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsOrderMapper.xml index 19ca45279..3b29cb6a8 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsOrderMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsOrderMapper.xml @@ -134,6 +134,7 @@ ltco.plan_num planNum, ltco.real_num loadingNum, lww.total_freight orderFreight, + lww.check_user_name checkUserName, IFNULL(ltco.unload_num,0) unloadNum, IFNULL(lww.total_freight/lww.total_count*ltco.unload_num,0) unloadIncome, IFNULL(lww.total_freight/lww.total_count*ltco.plan_num,0) orderLineCost, diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java index 81cead4b4..6fb84ab3c 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java @@ -89,4 +89,7 @@ public interface ITrunklineCarsLoadScanService extends BaseService findArriveLoadScanWaybillList(Long loadId, Long nodeId); List findUnloadLoadScanWaybillList(Long loadId, Long nodeId); + + List findListNoDataByLoadId(Long loadId); + } diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java index 0e3d7ab71..849ef7336 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java @@ -182,4 +182,6 @@ public interface ITrunklineCarsLoadService extends BaseService findListNoDataByLoadId(Long loadId) { + return baseMapper.findListNoDataByLoadId(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 f97260d90..43759dfc0 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 @@ -3695,6 +3695,23 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl ls = trunklineCarsLoadScanService.findListNoDataByLoadId(loadId); + + Map map = new HashMap<>(); + map.put("noDataLoadScanList",ls); + + return R.data(map); + } + @Override public R loadingTrayInfo(LoadCarsDTO loadCarsDTO) { log.info("##############loadingTrayInfo: 查询托盘的货物信息"); diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml index 36e48b53b..8f9fc585a 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml @@ -64,6 +64,7 @@ select * from logpm_warehouse_waybill + and waybill_type = 2 and waybill_no like concat('%',#{param.waybillNo },'%') and order_no like concat('%',#{param.orderNo },'%') and departure_warehouse_name like concat('%',#{param.departureWarehouseName },'%')