From d8c9b9afb41c368a08d7e05d0f624c98bf72042a Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期五, 06 六月 2025 11:18:56 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/WorkLogScheduler.java |   61 +++++++++++++++++++++++++-----
 1 files changed, 51 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
index fa2274c..bd1e371 100644
--- a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
@@ -1,37 +1,78 @@
 package com.zy.asrs.task;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.entity.WrkDetl;
 import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.mapper.OrderDetlMapper;
+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.WorkLogHandler;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
  * Created by vincent on 2020/7/7
  */
+@Slf4j
 @Component
 public class WorkLogScheduler {
-
-    private static final Logger log = LoggerFactory.getLogger(WorkLogScheduler.class);
 
     @Autowired
     private WorkLogHandler workLogHandler;
     @Autowired
     private WrkMastService wrkMastService;
+    @Autowired
+    private OrderService orderService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
+    @Autowired
+    private OrderDetlMapper orderDetlMapper;
 
     @Scheduled(cron = "0/3 * * * * ? ")
-    private void execute(){
-        WrkMast wrkMast = wrkMastService.selectToBeHistoryData();
-        if (null == wrkMast) {
+    private void execute() {
+        List<WrkMast> wrkMasts = wrkMastService.selectToBeHistoryData();
+        if (wrkMasts.isEmpty()) {
             return;
         }
-        ReturnT<String> result = workLogHandler.start(wrkMast);
-        if (!result.isSuccess()) {
-            log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo());
+        for (WrkMast wrkMast : wrkMasts) {
+            ReturnT<String> result = workLogHandler.start(wrkMast);
+            if (!result.isSuccess()) {
+                log.error("宸ヤ綔妗workNo={}]鍘嗗彶妗e鐞嗗け璐�", wrkMast.getWrkNo());
+            }
         }
     }
 
+
+    @Scheduled(cron = "0/3 * * * * ? ")
+    private void execute2() {
+        List<Order> orders = orderService.selectWork();
+        for (Order order : orders) {
+            List<WrkDetl> wrkDetls = wrkDetlService.selectByOrderNo(order.getOrderNo());
+            if (wrkDetls != null) {
+                return;
+            }
+            List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()));
+            boolean complete = true;
+            for (OrderDetl orderDetl : orderDetls) {
+                if (orderDetl.getAnfme() > orderDetl.getQty()) {
+                    complete = false;
+                    break;
+                }
+            }
+            if (complete) {
+                if (!orderService.updateSettle(order.getId(), 4L, null)) {
+                    throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");
+                }
+            }
+        }
+    }
 }

--
Gitblit v1.9.1