From b248de310fd65c11f959f4cd0f02d3a6d3edb2c2 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期六, 12 十月 2024 16:41:21 +0800
Subject: [PATCH] 优化订单上报功能

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

diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
index 06a0624..bd1e371 100644
--- a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
@@ -1,6 +1,14 @@
 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;
@@ -22,9 +30,15 @@
     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(){
+    private void execute() {
         List<WrkMast> wrkMasts = wrkMastService.selectToBeHistoryData();
         if (wrkMasts.isEmpty()) {
             return;
@@ -37,4 +51,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