From 6494d25e5677f2e81c898006b3aada6260511f33 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期四, 24 七月 2025 09:41:32 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java |   47 +++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 43 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java b/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java
index e93a0a2..8fb4790 100644
--- a/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java
+++ b/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java
@@ -7,6 +7,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
@@ -34,17 +35,53 @@
     private ErpSqlServer erpSqlServer;
 
 
-    @Transactional(rollbackFor = Throwable.class)
+    //@Transactional(rollbackFor = Throwable.class)
     @Scheduled(cron = "${erp.refreshtime}")
+    @Async("orderThreadPool")
     public void OutHedTBScheduler() {
         //log.info("OutHedTBScheduler寮�濮嬩簡");
         if (!erpEnabled) return;
-        String sqlInHed = "select * from erp_OutHedTB where LKName='涓壃浜屾湡'";
+        String sqlInHed = "select * from erp_OutHedTB where LKName='楂橀湒绔嬪簱'";
         List<OutHedTB> inHeds = erpSqlServer.select(sqlInHed, OutHedTB.class);
         if (!inHeds.isEmpty()) {
             for (OutHedTB inHed : inHeds) {
                 if (!Cools.isEmpty(inHed.getTemp3()) && inHed.getTemp3().equals("fault")) {
+                    //continue;
+                }
+                HashMap<String, String> condition = new HashMap<>();
+                condition.put("BillNO", "'" + inHed.getBillNo() + "'");
+                List<OutDetTB> inDetTBS = erpSqlServer.selectList(OutDetTB.class, condition);
+                HashMap<String, Object> hedAndDet = new HashMap<>();
+                hedAndDet.put("hed", inHed);
+                hedAndDet.put("det", inDetTBS);
+                if (inDetTBS == null || inDetTBS.isEmpty()) {
                     continue;
+                }
+                try {
+                    inMS.createOutOrder(inHed, inDetTBS);
+                    log.info("鍑哄簱鍗曟嵁鎴愬姛,{}", inHed);
+                    move(hedAndDet);
+                } catch (Exception e) {
+                    log.info(e.getMessage());
+//                    e.printStackTrace();
+                    String sql = "UPDATE erp_OutHedTB SET Remark = 'fault' WHERE BillNo = '" + inHed.getBillNo() + "'";
+                    erpSqlServer.update(sql);
+//
+                }
+            }
+        }
+    }
+
+
+    public void OutHedTBScheduler(String orderNo) {
+        //log.info("OutHedTBScheduler寮�濮嬩簡");
+        if (!erpEnabled) return;
+        String sqlInHed = "select * from erp_OutHedTB where LKName='楂橀湒绔嬪簱' and BillNo = '" + orderNo + "'";
+        List<OutHedTB> inHeds = erpSqlServer.select(sqlInHed, OutHedTB.class);
+        if (!inHeds.isEmpty()) {
+            for (OutHedTB inHed : inHeds) {
+                if (!Cools.isEmpty(inHed.getTemp3()) && inHed.getTemp3().equals("fault")) {
+                    //continue;
                 }
                 HashMap<String, String> condition = new HashMap<>();
                 condition.put("BillNo", "'" + inHed.getBillNo() + "'");
@@ -57,9 +94,11 @@
                     log.info("鍑哄簱鍗曟嵁鎴愬姛,{}", inHed);
                     move(hedAndDet);
                 } catch (Exception e) {
-                    e.printStackTrace();
-                    String sql = "UPDATE erp_OutHedTB SET Temp3 = 'fault' WHERE BillNo = '" + inHed.getBillNo() + "'";
+                    log.info(e.getMessage());
+//                    e.printStackTrace();
+                    String sql = "UPDATE erp_OutHedTB SET Remark = 'fault' WHERE BillNo = '" + inHed.getBillNo() + "'";
                     erpSqlServer.update(sql);
+//
                 }
             }
         }

--
Gitblit v1.9.1