From 4448779d76ff424e666d65f2f168a5890642c857 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期三, 12 十一月 2025 14:04:22 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/task/OrderSyncScheduler.java |   66 +++++++++++++++++++++++++++++++-
 1 files changed, 63 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
index 61004e9..81b5e02 100644
--- a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -1,9 +1,15 @@
 package com.zy.asrs.task;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.WrkMast;
 import com.zy.asrs.service.ApiLogService;
 import com.zy.asrs.service.OrderService;
+import com.zy.asrs.service.WrkDetlService;
+import com.zy.asrs.service.WrkMastService;
 import com.zy.asrs.task.core.ReturnT;
 import com.zy.asrs.task.handler.OrderSyncHandler;
 import com.zy.common.entity.Parameter;
@@ -13,6 +19,7 @@
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -28,6 +35,10 @@
     private OrderService orderService;
     @Autowired
     private ApiLogService apiLogService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
+    @Autowired
+    private WrkMastService wrkMastService;
 
     @Scheduled(cron = "0 0 1 * * ? ")
     public void clearApiLog(){
@@ -39,18 +50,67 @@
     }
 
 //    @Scheduled(cron = "0/5 * * * * ? ")
-    @Async("orderThreadPool")
+//    @Async("orderThreadPool")
     public void completeAndReport(){
         String erpReport = Parameter.get().getErpReport();
         if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
             List<Order> orders = orderService.selectComplete();
             for (Order order : orders) {
-                ReturnT<String> result = orderSyncHandler.start(order);
-                if (!result.isSuccess()) {
+                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 0 * * * *")
+    public void completeAndReport2(){
+        List<Order> orders = orderService.selectComplete();
+        for (Order order : orders) {
+            try{
+                if (!Cools.isEmpty(order.getOrderNo())) {
+                    int selectCount = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("order_no", order.getOrderNo()));
+                    if (selectCount > 0) {
+                        // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶�
+                        orderService.updateSettle(order.getId(), 6L, null);
+                        continue;
+                    }
+                }
+                order.setCreateTime(new Date());
+                orderService.updateById(order);
+            }catch (Exception e){
+                log.error("鍗曟嵁[orderNo={}]涓婃姤erp澶辫触", order.getOrderNo());
+                log.error("璁㈠崟"+order+"澶勭悊澶辫触锛屽紓甯镐俊鎭細"+e);
+            }
+        }
+    }
+
+    @Scheduled(cron = "0/5 * * * * ? ")
+    private void executeV1(){
+        List<WrkMast> wrkMasts = wrkMastService.selectToBeHistoryDataV1();
+        if (Cools.isEmpty(wrkMasts) || wrkMasts.size()==0) {
+            return;
+        }
+        for (WrkMast wrkMast : wrkMasts) {
+            try{
+                ReturnT<String> result = orderSyncHandler.startV1(wrkMast);
+                if (!result.isSuccess()) {
+                    log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo());
+                } else {
+                    wrkMast.setLogMk("Y");
+                    wrkMastService.updateById(wrkMast);
+                }
+            }catch (Exception e){
+                log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo());
+                log.error("澶勭悊澶辫触锛屽紓甯镐俊鎭細"+e);
+            }
+        }
+    }
+
 }

--
Gitblit v1.9.1