From e0b041aca4e2ed0e0881e596c6cd1ec3dc63ddba Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期五, 09 一月 2026 15:51:20 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/WorkLogScheduler.java |   74 +++++++++++++++++++++++++++++++++---
 1 files changed, 67 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
index dddcf8d..9c4cb27 100644
--- a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
@@ -1,32 +1,68 @@
 package com.zy.asrs.task;
 
-import com.zy.asrs.entity.WrkMast;
-import com.zy.asrs.service.WrkMastService;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.*;
+import com.zy.asrs.mapper.OrderDetlMapper;
+import com.zy.asrs.service.*;
 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 org.springframework.transaction.annotation.Transactional;
 
 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;
+    @Autowired
+    private WrkDetlLogService wrkDetlLogService;
+    @Autowired
+    private MatService  matService;
+
+
 
     @Scheduled(cron = "0/3 * * * * ? ")
-    private void execute(){
+//    @Transactional(rollbackFor = Exception.class)
+    private void replenishColor() {
+        List<WrkDetlLog> wrkDetlLogs = wrkDetlLogService.selectList(new EntityWrapper<WrkDetlLog>().isNull("color"));
+        for (WrkDetlLog wrkDetlLog : wrkDetlLogs) {
+            Mat mat = matService.selectByMatnr(wrkDetlLog.getMatnr());
+            if(null==mat){
+                wrkDetlLog.setColor("鏈煡");
+            }else {
+                wrkDetlLog.setColor(mat.getColor());
+            }
+            boolean update = wrkDetlLogService.update(wrkDetlLog, new EntityWrapper<WrkDetlLog>()
+                    .eq("wrk_no", wrkDetlLog.getWrkNo())
+                    .eq("matnr", wrkDetlLog.getMatnr())
+                    .eq(!Cools.isEmpty(wrkDetlLog.getIoTime()),"io_time", wrkDetlLog.getIoTime()));
+            if (!update) {
+               throw new CoolException("鐘舵�佷负绌猴紝鏇存柊鍘嗗彶妗eけ璐�");
+            }
+        }
+    }
+
+    @Scheduled(cron = "0/3 * * * * ? ")
+    private void execute() {
         List<WrkMast> wrkMasts = wrkMastService.selectToBeHistoryData();
         if (wrkMasts.isEmpty()) {
             return;
@@ -39,4 +75,28 @@
         }
     }
 
+
+    @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