From df115aec77ff63d19e74193478b46bcc6bbc4f09 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期五, 12 九月 2025 17:05:24 +0800
Subject: [PATCH] 1
---
src/main/resources/mapper/OrderMapper.xml | 16 ++++++++
src/main/java/com/zy/asrs/entity/param/ReturnOrderConfirmParam.java | 18 +++++++++
src/main/java/com/zy/asrs/controller/OpenController.java | 2
src/main/java/com/zy/asrs/task/OrderSyncScheduler.java | 23 +++++++++++
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 30 +++++++-------
src/main/java/com/zy/asrs/service/OpenService.java | 2
6 files changed, 74 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 3114ac3..f3a5d9b 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -495,7 +495,7 @@
@PostMapping("/returnOrder/auth/v1")
@AppAuth(memo = "閫�搴撳崟鍗曟嵁涓嬪彂")
public synchronized R returnOrder(@RequestHeader(required = false) String appkey,
- @RequestBody GroupOrderConfirmParam param,
+ @RequestBody ReturnOrderConfirmParam param,
HttpServletRequest request) {
auth(appkey, param, request);
openService.returnOrder(param);
diff --git a/src/main/java/com/zy/asrs/entity/param/ReturnOrderConfirmParam.java b/src/main/java/com/zy/asrs/entity/param/ReturnOrderConfirmParam.java
new file mode 100644
index 0000000..7f8650c
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/ReturnOrderConfirmParam.java
@@ -0,0 +1,18 @@
+package com.zy.asrs.entity.param;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ReturnOrderConfirmParam {
+ private String orderNumber; //缁勮揣鍗曞彿
+ private String packageGroupNo; // 澶氫釜鍖呰缁勫彿
+ private List<VolumeNumber> volumeNumbers; // 澶氫釜鍖呰缁勫彿
+
+
+ @Data
+ public static class VolumeNumber {
+ private String volumeNumber;
+ }
+}
diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java
index d49a933..da9ddc7 100644
--- a/src/main/java/com/zy/asrs/service/OpenService.java
+++ b/src/main/java/com/zy/asrs/service/OpenService.java
@@ -156,7 +156,7 @@
R groupOrderConfirm(GroupOrderConfirmParam param);
- R returnOrder(GroupOrderConfirmParam param);
+ R returnOrder(ReturnOrderConfirmParam param);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index a2ac7e5..8879063 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -2344,16 +2344,19 @@
@Override
@Transactional
- public R returnOrder(GroupOrderConfirmParam param) {
+ public R returnOrder(ReturnOrderConfirmParam param) {
+ if (Cools.isEmpty(param.getOrderNumber())) {
+ param.setOrderNumber("THCK" + snowflakeIdWorker.nextId() + "");
+ }
// 1. 鏌ヨ鍗曟嵁鏄惁瀛樺湪
- Order order = orderMapper.selectOrderByOrderNo(param.getGroupOrderNumber());
+ Order order = orderMapper.selectOrderByOrderNo(param.getOrderNumber());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if (order == null) {
// 1.1 涓嶅瓨鍦紝鏂板缓鍗曟嵁
order = new Order();
- order.setOrderNo(param.getGroupOrderNumber());
- order.setStatus(Integer.valueOf(param.getGroupStatus()));
+ order.setOrderNo(param.getOrderNumber());
+ order.setStatus(1);
order.setOrderTime(sdf.format(new Date()));
order.setCreateTime(new Date());
order.setSettle(1L);
@@ -2361,34 +2364,31 @@
orderMapper.insert(order);
} else {
// 1.2 瀛樺湪锛屾洿鏂板崟鎹姸鎬�
- order.setStatus(Integer.valueOf(param.getGroupStatus()));
+ order.setStatus(1);
orderMapper.updateById(order);
}
orderDetlMapper.delete(
- new EntityWrapper<OrderDetl>().eq("order_no", param.getGroupOrderNumber())
+ new EntityWrapper<OrderDetl>().eq("order_no", param.getOrderNumber())
);
// 2. 涓�涓�瀵瑰簲閬嶅巻
- List<GroupOrderConfirmParam.PackageGroupNo> pkgList = param.getPackageGroupNos();
- List<GroupOrderConfirmParam.VolumeNumber> volList = param.getVolumeNumbers();
+ List<ReturnOrderConfirmParam.VolumeNumber> volList = param.getVolumeNumbers();
- int size = Math.min(pkgList.size(), volList.size()); // 闃叉瓒婄晫
- for (int i = 0; i < size; i++) {
- GroupOrderConfirmParam.PackageGroupNo pg = pkgList.get(i);
- GroupOrderConfirmParam.VolumeNumber vn = volList.get(i);
+ for (int i = 0; i < volList.size(); i++) {
+ ReturnOrderConfirmParam.VolumeNumber vn = volList.get(i);
// 鏌ヨ鏄惁宸插瓨鍦ㄨ detl
OrderDetl detl = orderDetlMapper.selectByOrderNoAndPkgGroupNoAndVolumeNo(
- param.getGroupOrderNumber(), pg.getPackageGroupNo(), vn.getVolumeNumber()
+ param.getOrderNumber(), param.getPackageGroupNo(), vn.getVolumeNumber()
);
if (detl == null) {
detl = new OrderDetl();
detl.setOrderId(order.getId());
- detl.setOrderNo(param.getGroupOrderNumber());
+ detl.setOrderNo(param.getOrderNumber());
detl.setCreateTime(new Date());
detl.setAnfme(1.0);
- detl.setBrand(pg.getPackageGroupNo()); // 鍖呰缁勫彿
+ detl.setBrand(param.getPackageGroupNo()); // 鍖呰缁勫彿
detl.setModel(vn.getVolumeNumber()); // 鍗峰彿
orderDetlMapper.insert(detl);
}
diff --git a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
index 10d0ebb..8a59743 100644
--- a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -74,6 +74,29 @@
}
+ @Scheduled(cron = "0/9 * * * * ? ")
+ @Async("orderThreadPool")
+ public void completeAndReport2() {
+ Config config = configMapper.selectConfigByCode("RETURN_REPORT");
+ if (config == null || config.getStatus() == 0 || Cools.isEmpty(config.getValue())) {
+ return;
+ }
+
+ List<Order> orders = orderService.selectComplete();
+ for (Order order : orders) {
+ try {
+ ReturnT<String> result = orderSyncHandler.start(order);
+ if (!result.isSuccess()) {
+ log.error("鍗曟嵁[orderNo={}]涓婃姤erp澶辫触", order.getOrderNo());
+ }
+ } catch (Exception e) {
+ log.error("鍗曟嵁[orderNo={}]涓婃姤erp澶辫触", order.getOrderNo());
+ log.error("璁㈠崟" + order + "澶勭悊澶辫触锛屽紓甯镐俊鎭細" + e);
+ }
+ }
+
+ }
+
@Scheduled(cron = "0/30 * * * * ? ")
public void complete() {
diff --git a/src/main/resources/mapper/OrderMapper.xml b/src/main/resources/mapper/OrderMapper.xml
index 7377a19..2d0db2c 100644
--- a/src/main/resources/mapper/OrderMapper.xml
+++ b/src/main/resources/mapper/OrderMapper.xml
@@ -85,6 +85,22 @@
mo.create_time asc
</select>
+ <select id="selectComplete2" resultMap="BaseResultMap">
+ select
+ top 5 mo.*
+ from
+ man_order mo
+ inner join man_doc_type mt on
+ mo.doc_type = mt.doc_id
+ where
+ mt.pakout = 1
+ and mo.settle = 5
+ and mo.status = 1
+ and mo.doc_type = 26
+ order by
+ mo.create_time asc
+ </select>
+
<insert id="addToLogTable">
INSERT INTO man_order_log SELECT * FROM man_order WHERE id = #{id}
</insert>
--
Gitblit v1.9.1