From 2b876550168aa98cb61d62255314c2fa77cc0cd8 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 10 二月 2026 10:15:49 +0800
Subject: [PATCH] 定时任务修改订单云物流状态
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java | 43 +++++++++++++++++++++++--------------------
1 files changed, 23 insertions(+), 20 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java
index 890a677..5538a35 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/TaskUtil.java
@@ -224,25 +224,27 @@
logistics_list.add(logistics_1);
}
- List<TErpProcurement> procurements = erpProcurementService.list(Wrappers.lambdaQuery(TErpProcurement.class)
- .in(TErpProcurement::getProcurementCode, tidList));
- if(!CollectionUtils.isEmpty(procurements)){
- for (TErpProcurement procurement : procurements) {
- procurement.setLogisticsNo(map.get(procurement.getProcurementCode()));
- procurement.setStatus(4);
- procurement.setSendTime(LocalDateTime.now());
+ if(!CollectionUtils.isEmpty(tidList)){
+ List<TErpProcurement> procurements = erpProcurementService.list(Wrappers.lambdaQuery(TErpProcurement.class)
+ .in(TErpProcurement::getProcurementCode, tidList));
+ if(!CollectionUtils.isEmpty(procurements)){
+ for (TErpProcurement procurement : procurements) {
+ procurement.setLogisticsNo(map.get(procurement.getProcurementCode()));
+ procurement.setStatus(4);
+ procurement.setSendTime(LocalDateTime.now());
+ }
+ erpProcurementService.updateBatchById(procurements);
}
- erpProcurementService.updateBatchById(procurements);
- }
- // 物流同步回写
- JSONObject logisticsSyncAck = LogisticsSyncAck.logisticsSyncAck(sysCloudConfig.getSid(), sysCloudConfig.getAppKey(),
- sysCloudConfig.getAppSecret(), sysCloudConfig.getUrl(), logistics_list);
- log.info("物流同步成功");
- if(!CollectionUtils.isEmpty(procurements)){
- List<String> supplierIds = procurements.stream().map(TErpProcurement::getSupplierId).collect(Collectors.toList());
- List<String> ids = procurements.stream().map(TErpProcurement::getId).collect(Collectors.toList());
- // 处理发货流程
- detailProcurementSend(supplierIds,ids);
+ // 物流同步回写
+ JSONObject logisticsSyncAck = LogisticsSyncAck.logisticsSyncAck(sysCloudConfig.getSid(), sysCloudConfig.getAppKey(),
+ sysCloudConfig.getAppSecret(), sysCloudConfig.getUrl(), logistics_list);
+ log.info("物流同步成功");
+ if(!CollectionUtils.isEmpty(procurements)){
+ List<String> supplierIds = procurements.stream().map(TErpProcurement::getSupplierId).collect(Collectors.toList());
+ List<String> ids = procurements.stream().map(TErpProcurement::getId).collect(Collectors.toList());
+ // 处理发货流程
+ detailProcurementSend(supplierIds,ids);
+ }
}
}
@@ -306,7 +308,7 @@
//TODO 确定这个是采购价还是销售价格
tErpSupplierOutbound.setTotalMoney(tErpProcurementGoods.getPurchasePrice().multiply(new BigDecimal(purchaseCount)));
- TErpSupplierOutbound last = erpSupplierOutboundMapper.selectOne(new LambdaQueryWrapper<TErpSupplierOutbound>().orderByDesc(BaseModel::getCreateTime).orderByDesc(TErpSupplierOutbound::getOutboundNumber).last("limit 1"));
+ TErpSupplierOutbound last = erpSupplierOutboundMapper.selectOne(new LambdaQueryWrapper<TErpSupplierOutbound>().orderByDesc(TErpSupplierOutbound::getCreateTime).orderByDesc(TErpSupplierOutbound::getOutboundNumber).last("limit 1"));
if(last==null){
tErpSupplierOutbound.setOutboundNumber("G" + DateUtils.dateTimeNow()+"00001");
}else {
@@ -331,6 +333,7 @@
try {
erpSupplierOutboundMapper.insert(tErpSupplierOutbound);
}catch (Exception e){
+ e.printStackTrace();
throw new RuntimeException("网络繁忙,请重试");
}
@@ -355,7 +358,7 @@
tErpSupplierOutbound.setOutboundType(7);
//TODO 确定这个是采购价还是销售价格
tErpSupplierOutbound.setTotalMoney(tErpProcurementGoods.getPurchasePrice().multiply(new BigDecimal(purchaseCount)));
- TErpSupplierOutbound last = erpSupplierOutboundMapper.selectOne(new LambdaQueryWrapper<TErpSupplierOutbound>().orderByDesc(BaseModel::getCreateTime).orderByDesc(TErpSupplierOutbound::getOutboundNumber).last("limit 1"));
+ TErpSupplierOutbound last = erpSupplierOutboundMapper.selectOne(new LambdaQueryWrapper<TErpSupplierOutbound>().orderByDesc(TErpSupplierOutbound::getCreateTime).orderByDesc(TErpSupplierOutbound::getOutboundNumber).last("limit 1"));
if(last==null){
tErpSupplierOutbound.setOutboundNumber("G" + DateUtils.dateTimeNow()+"00001");
}else {
--
Gitblit v1.7.1