From 1a2f494454d0da24bb9ca7ad7c0e91902819405a Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期五, 21 十一月 2025 13:18:42 +0800
Subject: [PATCH] 1.获取erp订单数据时过滤掉状态》5 2.同步erp删除数据时,只删除指定的订单明细 3.订单出库按批号排序

---
 src/main/java/com/zy/third/task/OrderScheduler.java |  139 +++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 136 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/third/task/OrderScheduler.java b/src/main/java/com/zy/third/task/OrderScheduler.java
index 77e3c3d..253bd4b 100644
--- a/src/main/java/com/zy/third/task/OrderScheduler.java
+++ b/src/main/java/com/zy/third/task/OrderScheduler.java
@@ -1,9 +1,17 @@
 package com.zy.third.task;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.zy.asrs.entity.OrderDetl1;
+import com.zy.asrs.service.impl.OrderDetl1ServiceImpl;
 import com.zy.third.entity.ExdInstockSource;
+import com.zy.third.entity.ExdInstockTarget;
 import com.zy.third.entity.ExdOutstockSource;
+import com.zy.third.entity.ExdOutstockTarget;
 import com.zy.third.mapper.ExdInstockSourceMapper;
 import com.zy.third.mapper.ExdOutstockSourceMapper;
+import com.zy.third.service.ExdInstockTargetService;
+import com.zy.third.service.ExdOutstockTargetService;
 import com.zy.third.task.handler.OrderHandler;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,13 +36,23 @@
     @Autowired
     private ExdOutstockSourceMapper exdOutstockSourceMapper;
 
+    @Autowired
+    private ExdInstockTargetService exdInstockTargetService;
+
+    @Autowired
+    private ExdOutstockTargetService exdOutstockTargetService;
+    @Autowired
+    private OrderDetl1ServiceImpl orderDetl1ServiceImpl;
+    @Autowired
+    private OrderDetl1ServiceImpl orderDetl1Service;
+
 
     /**
      * 璇诲彇鍏ュ簱鍗曟嵁
      */
     @Scheduled(cron = "0/10 * * * * ? ")
     public void readInOrder() {
-        log.info("璇诲彇鍏ュ簱鍗曟嵁");
+        //log.info("璇诲彇鍏ュ簱鍗曟嵁");
         List<String> orderNos = exdInstockSourceMapper.listOrderNo();
         for (String orderNo : orderNos) {
             List<ExdInstockSource> exdInstockSources = exdInstockSourceMapper.listAll(orderNo);
@@ -53,6 +71,7 @@
                 }
             } catch (Exception e) {
                 log.error("璇诲彇鍏ュ簱鍗曟嵁淇℃伅澶辫触锛歿},{}", exdInstockSources, e.getMessage());
+                e.printStackTrace();
                 for (ExdInstockSource exdInstockSource : exdInstockSources) {
                     exdInstockSource.setReadormsg(e.getMessage());
                     exdInstockSource.setStatus(2);
@@ -63,11 +82,46 @@
     }
 
     /**
+     * 璇诲彇鍏ュ簱鍗曟嵁锛屽erp鏍囪涓哄垹闄ょ殑璁㈠崟杩涜鍒犻櫎
+     * status 5  --銆� 8 鍒犻櫎鎴愬姛
+     * status 5  --銆� 7 鍒犻櫎澶辫触
+     */
+    @Scheduled(cron = "0/10 * * * * ? ")
+    public void deleteInOrder() {
+        //log.info("璇诲彇鍏ュ簱鍗曟嵁");
+        List<ExdInstockSource> exdInstockSources = exdInstockSourceMapper.deletelistOrderNo();
+        for (ExdInstockSource exdInstockSource : exdInstockSources) {
+            try {
+                boolean success = orderHandler.deletereadInOrder(exdInstockSource).isSuccess();
+                    if (success) {
+                        exdInstockSource.setReadtime(new Date());
+                        exdInstockSource.setStatus(8);
+                        exdInstockSourceMapper.updateById(exdInstockSource);
+                    } else {
+                        exdInstockSource.setReadtime(new Date());
+                        exdInstockSource.setStatus(7);
+                        exdInstockSourceMapper.updateById(exdInstockSource);
+                    }
+
+            } catch (Exception e) {
+//                log.error("璇诲彇鍏ュ簱鍗曟嵁淇℃伅澶辫触锛歿},{}", exdInstockSources, e.getMessage());
+                e.printStackTrace();
+                exdInstockSource.setReadormsg(e.getMessage());
+                exdInstockSource.setStatus(7);
+                exdInstockSourceMapper.updateById(exdInstockSource);
+
+            }
+        }
+
+
+    }
+
+    /**
      * 璇诲彇鍑哄簱鍗曟嵁
      */
     @Scheduled(cron = "0/10 * * * * ? ")
     public void readOutOrder() {
-        log.info("璇诲彇鍑哄簱鍗曟嵁");
+        //log.info("璇诲彇鍑哄簱鍗曟嵁");
         List<String> orderNos = exdOutstockSourceMapper.listOrderNo();
         for (String orderNo : orderNos) {
             List<ExdOutstockSource> exdOutstockSources = exdOutstockSourceMapper.listAll(orderNo);
@@ -83,10 +137,10 @@
                         exdOutstockSource.setStatus(2);
                         exdOutstockSourceMapper.updateById(exdOutstockSource);
                     }
-
                 }
             } catch (Exception e) {
                 log.error("璇诲彇鍑哄簱鍗曟嵁淇℃伅澶辫触锛歿},{}", exdOutstockSources, e.getMessage());
+                e.printStackTrace();
                 for (ExdOutstockSource exdOutstockSource : exdOutstockSources) {
                     exdOutstockSource.setStatus(2);
                     exdOutstockSource.setReadormsg(e.getMessage());
@@ -96,4 +150,83 @@
         }
     }
 
+    /**
+     * 璇诲彇鍒犻櫎鍑哄簱鍗曟嵁
+     */
+    @Scheduled(cron = "0/10 * * * * ? ")
+    public void deletereadOutOrder() {
+        //log.info("璇诲彇鍑哄簱鍗曟嵁");
+        List<ExdOutstockSource> exdOutstockSources = exdOutstockSourceMapper.deletelistOrderNo();
+        for (ExdOutstockSource exdOutstockSource : exdOutstockSources) {
+            try {
+                boolean success = orderHandler.deletereadOutOrder(exdOutstockSource).isSuccess();
+                if (success) {
+                    exdOutstockSource.setReadtime(new Date());
+                    exdOutstockSource.setStatus(8);
+                    exdOutstockSourceMapper.updateById(exdOutstockSource);
+                } else {
+                    exdOutstockSource.setReadtime(new Date());
+                    exdOutstockSource.setStatus(7);
+                    exdOutstockSourceMapper.updateById(exdOutstockSource);
+                }
+            } catch (Exception e) {
+//                log.error("璇诲彇鍑哄簱鍗曟嵁淇℃伅澶辫触锛歿},{}", exdOutstockSources, e.getMessage());
+                e.printStackTrace();
+                exdOutstockSource.setStatus(7);
+                exdOutstockSource.setReadormsg(e.getMessage());
+                exdOutstockSourceMapper.updateById(exdOutstockSource);
+            }
+        }
+
+    }
+
+    /**
+     * 璇诲彇閿欒鍑哄簱瀹屾垚鍗曟嵁
+     */
+//    @Scheduled(cron = "* 0/10 * * * ? ")
+    @Scheduled(cron = "0/10 * * * * ? ")
+    public void readOutOrdererror() {
+        List<ExdOutstockTarget> status = exdOutstockTargetService.selectList(new EntityWrapper<ExdOutstockTarget>().isNotNull("ReadorMsg"));
+        if (status.size() > 0) {
+            for (ExdOutstockTarget exdOutstockTarget : status) {
+                List<OrderDetl1> orderNo = orderDetl1Service.selectList(new EntityWrapper<OrderDetl1>().eq("order_no", exdOutstockTarget.getFbillno()));
+                if (!Cools.isEmpty(orderNo)) {
+                    for (OrderDetl1 orderDetl1 : orderNo) {
+                        if (!Cools.isEmpty(orderDetl1.getMemo()) && orderDetl1.getMemo().equals(exdOutstockTarget.getReadormsg())) {
+                            break;
+                        }
+                        orderDetl1.setMemo(exdOutstockTarget.getReadormsg());
+                        orderDetl1Service.updateById(orderDetl1);
+                    }
+                }
+            }
+        }
+
+    }
+
+    /**
+     * 璇诲彇閿欒鍏ュ簱瀹屾垚鍗曟嵁
+     */
+    @Scheduled(cron = "* 0/10 * * * ? ")
+//    @Scheduled(cron = "0/10 * * * * ? ")
+    public void readInOrdererror() {
+        List<ExdInstockTarget> status = exdInstockTargetService.selectList(new EntityWrapper<ExdInstockTarget>().isNotNull("ReadorMsg"));
+        if (status.size() > 0) {
+            for (ExdInstockTarget exdInstockTarget : status) {
+                List<OrderDetl1> orderNo = orderDetl1Service.selectList(new EntityWrapper<OrderDetl1>().eq("order_no", exdInstockTarget.getFbillno()));
+                if (!Cools.isEmpty(orderNo)) {
+                    for (OrderDetl1 orderDetl1 : orderNo) {
+                        if (orderDetl1.getMemo().equals(exdInstockTarget.getReadormsg())) {
+                            break;
+                        }
+                        orderDetl1.setMemo(exdInstockTarget.getReadormsg());
+                        orderDetl1Service.updateById(orderDetl1);
+                    }
+                }
+
+            }
+        }
+
+    }
+
 }

--
Gitblit v1.9.1