From 75b02762e7771cac2f194f8c3d5212aa0d4cd26f Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" Date: Thu, 4 Jan 2024 15:10:09 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E6=A2=A6=E5=A4=A9=E7=9A=84?= =?UTF-8?q?=E5=8D=B8=E8=BD=A6=E6=8E=A8=E9=80=81=202.=E4=BF=AE=E6=94=B9PDA?= =?UTF-8?q?=E7=99=BB=E5=BD=95=20=E6=9F=A5=E7=9C=8B=E9=85=8D=E9=80=81?= =?UTF-8?q?=E8=BD=A6=E6=AC=A1=E6=9F=A5=E7=9C=8B=E5=88=B0=E5=85=B6=E4=BB=96?= =?UTF-8?q?=E4=BB=93=E5=BA=93=E7=9A=84=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionDeliveryListMapper.java | 2 +- .../mapper/DistributionDeliveryListMapper.xml | 2 +- .../impl/DistributionAsyncServiceImpl.java | 2 +- .../DistributionDeliveryListServiceImpl.java | 6 +- .../factory/config/RabbitMqConfiguration.java | 92 +++++++++---------- .../factory/mt/feign/MtOrderMainClinet.java | 14 +-- .../factory/receiver/UnloadCarComHandler.java | 37 +++++--- 7 files changed, 84 insertions(+), 71 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.java index 8767d0b61..256c72eaa 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.java @@ -182,7 +182,7 @@ public interface DistributionDeliveryListMapper extends BaseMapper selectdeliveryworkVnScanStockde(@Param("barcode")String barcode,@Param("deliveryId") Long deliveryId); - List selectDistributionAppDeliveryListPage(IPage page, @Param("param") DistributionAppDeliveryListDTO distributionAppDeliveryListDTO,@Param("array") List deliveryIds); + List selectDistributionAppDeliveryListPage(IPage page, @Param("param") DistributionAppDeliveryListDTO distributionAppDeliveryListDTO,@Param("array") List deliveryIds,@Param("warehouseId") Long warehouseId); /** diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml index 3dfbe1466..b02e3092a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml @@ -757,7 +757,7 @@ logpm_distribution_delivery_list lddl left join logpm_distribution_delivery_self ldds on lddl.id =ldds.delivery_id - lddl.is_deleted =0 + lddl.is_deleted =0 and lddl.warehourse_id =#{warehouseId} and lddl.type = #{param.type} and lddl.id in diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java index 3129d608f..e757a7559 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java @@ -1473,7 +1473,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { //推送内容 MtReceiveDTO mtReceiveDTO = new MtReceiveDTO(); mtReceiveDTO.setReceiver(distributionReservationEntity.getConsignee()); - mtReceiveDTO.setSendTaskId(distributionDeliveryListEntity.getId().toString()); + mtReceiveDTO.setSendTaskId(distributionReservationEntity.getId().toString()); Map> brand = null; diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 315b03215..6702d8afb 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -2164,6 +2164,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl value = dictBizClient.getValue("role_class", roleId); if (delivery) { @@ -2176,12 +2178,12 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl deliveryIds = distributionDeliverySelfMapper.selectdeliveryList(driverArtery.getId()); if (!deliveryIds.isEmpty()) { - distributionAppDeliveryListVOS = baseMapper.selectDistributionAppDeliveryListPage(page, distributionAppDeliveryListDTO, deliveryIds); + distributionAppDeliveryListVOS = baseMapper.selectDistributionAppDeliveryListPage(page, distributionAppDeliveryListDTO, deliveryIds,myCurrentWarehouse.getId()); } else { return page.setRecords(distributionAppDeliveryListVOS); } } else { - distributionAppDeliveryListVOS = baseMapper.selectDistributionAppDeliveryListPage(page, distributionAppDeliveryListDTO, null); + distributionAppDeliveryListVOS = baseMapper.selectDistributionAppDeliveryListPage(page, distributionAppDeliveryListDTO, null,myCurrentWarehouse.getId()); } //转换字典字段 for (DistributionAppDeliveryListVO distributionAppDeliveryListVO : distributionAppDeliveryListVOS) { diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/config/RabbitMqConfiguration.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/config/RabbitMqConfiguration.java index fefc0f844..ac464964a 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/config/RabbitMqConfiguration.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/config/RabbitMqConfiguration.java @@ -26,16 +26,16 @@ import static io.protostuff.MapSchema.MessageFactories.HashMap; public class RabbitMqConfiguration { @Bean - public RabbitTemplate createRabbitTemplate(ConnectionFactory connectionFactory){ + 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); + System.out.println("确认回调-相关数据:" + correlationData); + System.out.println("确认回调-确认情况:" + b); + System.out.println("确认回调-原因:" + s); // Long id = Long.parseLong(correlationData.getId()); // UpdateWrapper updateWrapper = new UpdateWrapper<>(); // if(b){ @@ -57,40 +57,43 @@ public class RabbitMqConfiguration { public void returnedMessage(ReturnedMessage returnedMessage) { - if("mt_business_data_2_factory_exchange-pref".equals(returnedMessage.getExchange())){ - return ; + 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()); + 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(){ + public DirectExchange errorMessageExchange() { return new DirectExchange(RabbitConstant.ERROR_EXCHANGE); } + @Bean - public Queue errorQueue(){ + public Queue errorQueue() { return new Queue(RabbitConstant.ERROR_QUEUE, true); } + @Bean - public Binding errorBinding(Queue errorQueue, DirectExchange errorMessageExchange){ + 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){ + public MessageRecoverer republishMessageRecoverer(RabbitTemplate rabbitTemplate) { return new RepublishMessageRecoverer(rabbitTemplate, RabbitConstant.ERROR_EXCHANGE, RabbitConstant.ERROR_ROUTING); } @@ -239,10 +242,6 @@ public class RabbitMqConfiguration { } - - - - @Bean public Queue oupaiTestReceivingQueue() { return new Queue(RabbitConstant.TEST_RECEIVE_INFO_QUEUE, true); @@ -296,18 +295,18 @@ public class RabbitMqConfiguration { return BindingBuilder.bind(syncOldDataQueue).to(syncOldDataExchange).with(RabbitConstant.SYNC_OLD_DATA_ROUTING).noargs(); } -/**************梦天扫描延迟推送 start****************/ + /**************梦天扫描延迟推送 start****************/ @Bean public Queue mtBusinessData2FactoryQueue() { - Map args =Maps.newHashMap(); - args.put("x-message-ttl",5000); - return new Queue(RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_QUEUE,true,false,false,args); + Map args = Maps.newHashMap(); + args.put("x-message-ttl", 5000); + return new Queue(RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_QUEUE, true, false, false, args); } @Bean public CustomExchange mtBusinessData2FactoryExchange() { - Map args =Maps.newHashMap(); + Map args = Maps.newHashMap(); args.put("x-delayed-type", "direct"); return new CustomExchange(RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_EXCHANGE, @@ -323,48 +322,49 @@ public class RabbitMqConfiguration { /**************梦天扫描延迟推送 end****************/ - /**************梦天扫描延迟推送 start****************/ @Bean public Queue mtBusinessDataClerkCheck2FactoryQueue() { - Map args =Maps.newHashMap(); - args.put("x-message-ttl",5000); - return new Queue(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_QUEUE,true,false,false,args); + Map args = Maps.newHashMap(); + args.put("x-message-ttl", 5000); + return new Queue(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_QUEUE, true, false, false, args); } - @Bean - public Queue normalQueue() { - return new Queue("normal_queue", true); - } @Bean - public CustomExchange normalExchange() { + public CustomExchange mtBusinessDataClerkCheck2FactoryExchange() { Map args = Maps.newHashMap(); + args.put("x-delayed-type", "direct"); - return new CustomExchange("normal_exchange", "x-delayed-message", true, false, args); + return new CustomExchange(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_EXCHANGE, + "x-delayed-message", true, false, args); + } @Bean - public Binding normalBinding(Queue normalQueue, CustomExchange normalExchange) { - return BindingBuilder.bind(normalQueue).to(normalExchange).with("normal_routerkey").noargs(); + public Binding mtBusinessDataClerkCheck2FactoryBinding(Queue mtBusinessDataClerkCheck2FactoryQueue, CustomExchange mtBusinessDataClerkCheck2FactoryExchange) { + return BindingBuilder.bind(mtBusinessDataClerkCheck2FactoryQueue).to(mtBusinessDataClerkCheck2FactoryExchange).with(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_ROUTING).noargs(); + } - @Bean - public CustomExchange mtBusinessDataClerkCheck2FactoryExchange() { - Map args =Maps.newHashMap(); + /**************梦天扫描延迟推送 end****************/ - args.put("x-delayed-type", "direct"); - return new CustomExchange(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_EXCHANGE, - "x-delayed-message", true, false, args); + @Bean + public Queue normalQueue() { + return new Queue("normal_queue", true); } @Bean - public Binding mtBusinessDataClerkCheck2FactoryBinding(Queue mtBusinessData2FactoryQueue, CustomExchange mtBusinessData2FactoryExchange) { - return BindingBuilder.bind(mtBusinessData2FactoryQueue).to(mtBusinessData2FactoryExchange).with(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_ROUTING).noargs(); - + public CustomExchange normalExchange() { + Map args = Maps.newHashMap(); + args.put("x-delayed-type", "direct"); + return new CustomExchange("normal_exchange", "x-delayed-message", true, false, args); } -/**************梦天扫描延迟推送 end****************/ + @Bean + public Binding normalBinding(Queue normalQueue, CustomExchange normalExchange) { + return BindingBuilder.bind(normalQueue).to(normalExchange).with("normal_routerkey").noargs(); + } } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/mt/feign/MtOrderMainClinet.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/mt/feign/MtOrderMainClinet.java index b3c0e1f6a..c92f612c9 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/mt/feign/MtOrderMainClinet.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/mt/feign/MtOrderMainClinet.java @@ -56,11 +56,11 @@ public class MtOrderMainClinet implements IMtOrderMainClinet { log.info(">>>>>>>>>>>>>>>>> 司机扫描 {}", DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss.SSS")); -// rabbitTemplate.convertAndSend(RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_EXCHANGE,RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_ROUTING, map,message -> { -// message.getMessageProperties() -// .setHeader("x-delay", 5000); -// return message; -// }); + rabbitTemplate.convertAndSend(RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_EXCHANGE,RabbitConstant.MT_BUSINESS_DATA_2_FACTORY_ROUTING, map,message -> { + message.getMessageProperties() + .setHeader("x-delay", 5000); + return message; + }); log.info(">>>>>>>>>>>>>>>>> 司机扫描 {}", DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss.SSS")); @@ -77,11 +77,11 @@ public class MtOrderMainClinet implements IMtOrderMainClinet { map.put("messageData",mes); log.info(">>>>>>>>>>>>>>>>> 文员复核 {}", DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss.SSS")); - /* rabbitTemplate.convertAndSend(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_EXCHANGE,RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_ROUTING, map,message -> { + rabbitTemplate.convertAndSend(RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_EXCHANGE,RabbitConstant.MT_BUSINESS_DATA_CLERK_CHECK_2_FACTORY_ROUTING, map,message -> { message.getMessageProperties() .setHeader("x-delay", 5000); return message; - });*/ + }); return R.success(""); diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/UnloadCarComHandler.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/UnloadCarComHandler.java index 4a85e02ec..580fb7758 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/UnloadCarComHandler.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/receiver/UnloadCarComHandler.java @@ -24,6 +24,7 @@ import org.springframework.stereotype.Component; import java.security.NoSuchAlgorithmException; import java.text.ParseException; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; @@ -79,6 +80,8 @@ public class UnloadCarComHandler { Map> stringListMap = allMtData.stream().collect(Collectors.groupingBy(MTOrderPackageRelationVO::getInvoiceOrderCode)); Set set = stringListMap.keySet(); String carNum = null; + + Set r = new HashSet<>(); for (String s : set) { // 得到某个工厂运输批次的集合 List t = stringListMap.get(s); @@ -91,17 +94,16 @@ public class UnloadCarComHandler { break; } } - log.info("##################unloadCarComDataHandler carNum:{}", carNum); - try { - if (StringUtil.isNoneBlank(carNum)) { - sendDataCarNum(carNum, unloadCarDTO.getCompleteDate()); - } - } catch (ParseException e) { - log.error("##################unloadCarComDataHandler 解析时间出错:{}", e.getMessage()); - } catch (NoSuchAlgorithmException | JsonProcessingException ignored) { - log.error("##################unloadCarComDataHandler 发送数据出错:{}", ignored.getMessage()); - } - } + if (StringUtil.isNoneBlank(carNum)) { + r.add(carNum); + } + } + + r.forEach(t->{ + sendDataCarNum(t, unloadCarDTO.getCompleteDate()); + }); + + } catch (Exception e) { log.error("##################unloadCarComDataHandler 解析数据出错:{}", e.getMessage()); } @@ -118,7 +120,7 @@ public class UnloadCarComHandler { * @throws NoSuchAlgorithmException * @throws JsonProcessingException */ - private void sendDataCarNum(String carNum, String completeDate) throws ParseException, NoSuchAlgorithmException, JsonProcessingException { + private void sendDataCarNum(String carNum, String completeDate) { log.info("##################sendDataCarNum carNum:{},completeDate{}", carNum, completeDate); // 需要判断这个发货单编号是否推送过 @@ -129,7 +131,16 @@ public class UnloadCarComHandler { log.info("##################{} 车次已经推送过", carNum); return; } - R r = mtFactoryDataService.sendUnloadCarNum(carNum, completeDate); + try{ + + R r = mtFactoryDataService.sendUnloadCarNum(carNum, completeDate); + + log.info("MT 数据卸车推送 {}",r.getMsg()); + }catch (Exception e){ + + + log.error(">>>> 梦天数据卸车推送异常",e); + } log.info("##################{} 梦天确认签收数据推送1", carNum); }