From cdfb6025516e43275982780291b4c5bd866bd9d7 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期五, 25 七月 2025 09:24:16 +0800
Subject: [PATCH] #erp对接修改

---
 src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java |   41 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 39 insertions(+), 2 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 e77f1fb..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;
@@ -36,10 +37,46 @@
 
     //@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) {
@@ -59,7 +96,7 @@
                 } catch (Exception e) {
                     log.info(e.getMessage());
 //                    e.printStackTrace();
-                    String sql = "UPDATE erp_OutHedTB SET Temp3 = 'fault' WHERE BillNo = '" + inHed.getBillNo() + "'";
+                    String sql = "UPDATE erp_OutHedTB SET Remark = 'fault' WHERE BillNo = '" + inHed.getBillNo() + "'";
                     erpSqlServer.update(sql);
 //
                 }

--
Gitblit v1.9.1