From 4f367ed9986d747ff1206cf5fa8220e2da5c2409 Mon Sep 17 00:00:00 2001 From: zhaoqiaobo Date: Fri, 10 May 2024 17:49:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(all):=20=E4=BF=AE=E6=94=B9=E5=B7=A5?= =?UTF-8?q?=E5=8E=82=E6=95=B0=E6=8D=AE=E6=8E=A5=E6=94=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AsyncDataServiceImpl.java | 23 +++++++++++-------- .../factory/jobhandler/FactoryXxlJob.java | 13 ++++++++--- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java index 24fe04061..78eed4fca 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java @@ -336,20 +336,20 @@ public class AsyncDataServiceImpl implements IAsyncDataService { } @Override - @Async + @Async("asyncExecutor") public void handlerPanDataToHtNew(Long id) { - log.info("################handlerDataToHt: 处理皮阿诺订单数据到"); + log.info("################handlerPanDataToHtNew: 处理皮阿诺订单数据到"); //查询需要同步的订单 QueryWrapper orderQueryWrapper = new QueryWrapper<>(); orderQueryWrapper.eq("status", 1) .eq("id", id) .eq("is_deleted", 0); List panFactoryOrders = panFactoryOrderService.list(orderQueryWrapper); - log.info("#########handlerDataToHt: 待处理的订单数量为{}", panFactoryOrders.size()); + log.info("#########handlerPanDataToHtNew: 待处理的订单数量为{}", panFactoryOrders.size()); List advances = new ArrayList<>(); for (PanFactoryOrder panFactoryOrder : panFactoryOrders) { Long orderId = panFactoryOrder.getId(); - log.info("#########handlerDataToHt: 当前处理的订单id={}", orderId); + log.info("#########handlerPanDataToHtNew: 当前处理的订单id={}", orderId); // 走新系统入库 Long startWarehouseId = null; String startWarehouseName = null; @@ -504,7 +504,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { factoryDataClient.sendMessage(sendMsg); } } - log.info("##############handlerDataToHt: 处理数据完成"); + log.info("##############handlerPanDataToHtNew: 处理数据完成"); } private Timestamp initTimestamp() { @@ -601,7 +601,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { @Override @Async("asyncExecutor") public void handlerMtDataToHtNew(Long mainId) { - log.info("################handlerMtDataToHt: 处理梦天订单数据到"); + log.info("################handlerMtDataToHtNew: 处理梦天订单数据到"); //查询需要同步的订单 QueryWrapper orderQueryWrapper = new QueryWrapper<>(); orderQueryWrapper.eq("status", 1) @@ -612,13 +612,13 @@ public class AsyncDataServiceImpl implements IAsyncDataService { MtFactoryOrderMain mtFactoryOrderMain = mtFactoryOrderMainService.getById(mainId); if (StringUtil.isBlank(mtFactoryOrderMain.getCenterWarehouseName()) || !(mtFactoryOrderMain.getCenterWarehouseName().contains("汇通"))) { - log.info("################handlerMtDataToHt: 这个派车单不推送到老系统 派车单号 {}", mtFactoryOrderMain.getInvoiceOrderCode()); + log.info("################handlerMtDataToHtNew: 这个派车单不推送到老系统 派车单号 {}", mtFactoryOrderMain.getInvoiceOrderCode()); return; } List mtFactoryOrders = mtFactoryOrderService.list(orderQueryWrapper); - log.info("#########handlerMtDataToHt: 待处理的订单数量为{}", mtFactoryOrders.size()); + log.info("#########handlerMtDataToHtNew: 待处理的订单数量为{}", mtFactoryOrders.size()); Long startWarehouseId = null; String startWarehouseName = null; String tenantId = null; @@ -634,7 +634,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { List advances = new ArrayList<>(); for (MtFactoryOrder mtFactoryOrder : mtFactoryOrders) { Long orderId = mtFactoryOrder.getId(); - log.info("#########handlerMtDataToHt: 当前处理的订单id={}", orderId); + log.info("#########handlerMtDataToHtNew: 当前处理的订单id={}", orderId); // 走新系统 TrunklineAdvanceEntity advanceEntity = new TrunklineAdvanceEntity(); advanceEntity.setTenantId(tenantId); @@ -674,6 +674,9 @@ public class AsyncDataServiceImpl implements IAsyncDataService { advanceEntity.setCustomerName(StringUtil.isBlank(mtFactoryOrder.getCustomName()) ? "" : mtFactoryOrder.getCustomName()); advanceEntity.setCustomerPhone(StringUtil.isBlank(mtFactoryOrder.getCustomPhone()) ? "" : mtFactoryOrder.getCustomPhone()); advanceEntity.setCustomerAddress(StringUtil.isBlank(mtFactoryOrder.getCustomAddress()) ? "" : mtFactoryOrder.getCustomAddress()); + advanceEntity.setConsigneePerson(StringUtil.isBlank(mtFactoryOrder.getConsignee()) ? "" : mtFactoryOrder.getConsignee()); + advanceEntity.setConsigneeMobile(StringUtil.isBlank(mtFactoryOrder.getConsigneePhone()) ? "" : mtFactoryOrder.getConsigneePhone()); + advanceEntity.setConsigneeAddress(StringUtil.isBlank(mtFactoryOrder.getConsigneeAddress()) ? "" : mtFactoryOrder.getConsigneeAddress()); advanceEntity.setSenderName(""); advanceEntity.setSenderPhone(""); advanceEntity.setSenderAddress(""); @@ -746,7 +749,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { factoryDataClient.sendMessage(sendMsg); } } - log.info("##############handlerMtDataToHt: 处理数据完成"); + log.info("##############handlerMtDataToHtNew: 处理数据完成"); } @Override diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java index 1225a665a..e23b6c930 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java @@ -421,6 +421,7 @@ public class FactoryXxlJob { Map collect = stationOrderList.stream().collect(Collectors.toMap(StationOrderEntity::getId, StationOrderEntity -> StationOrderEntity)); // 走新系统入库 if (collect.size() > 0) { + List advances = new ArrayList<>(); collect.forEach((k, v) -> { List packageList = new ArrayList<>(); List staorderPackagesList = staorderPackagesService.list(Wrappers.query().lambda() @@ -530,9 +531,7 @@ public class FactoryXxlJob { // 转成json对象,然后将包件明细放到detail中 cn.hutool.json.JSONObject entries = JSONUtil.parseObj(advanceEntity); entries.set("details", JSONUtil.toJsonStr(packageList)); - SendMsg sendMsg = SendMsg.builder().exchange(FactoryDataConstants.Mq.Exchanges.ADVANCE_ORDER) - .routingKey(FactoryDataConstants.Mq.RoutingKeys.ADVANCE_ORDER).message(JSONUtil.toJsonStr(entries)).build(); - factoryDataClient.sendMessage(sendMsg); + advances.add(entries); if (CollUtil.isNotEmpty(staorderPackagesList)) { staorderPackagesList.forEach(it -> { it.setIdentification("1"); @@ -540,6 +539,14 @@ public class FactoryXxlJob { }); } }); + // 将组装好的暂存单发送到 MQ ,由暂存单服务统一消费SendMsg. + if (CollUtil.isNotEmpty(advances)) { + for (cn.hutool.json.JSONObject advance : advances) { + SendMsg sendMsg = SendMsg.builder().exchange(FactoryDataConstants.Mq.Exchanges.ADVANCE_ORDER) + .routingKey(FactoryDataConstants.Mq.RoutingKeys.ADVANCE_ORDER).message(JSONUtil.toJsonStr(advance)).build(); + factoryDataClient.sendMessage(sendMsg); + } + } } //修改提交状态 stationOrderList.forEach(it -> {