From d147093e6b1e0d4f0d6aed1732843e6779ae696e Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期五, 27 二月 2026 09:45:57 +0800
Subject: [PATCH] 出库任务限制发给ctu过多

---
 src/main/java/com/zy/asrs/task/JlerScheduler.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/JlerScheduler.java b/src/main/java/com/zy/asrs/task/JlerScheduler.java
index 2a32c88..70aabab 100644
--- a/src/main/java/com/zy/asrs/task/JlerScheduler.java
+++ b/src/main/java/com/zy/asrs/task/JlerScheduler.java
@@ -1,7 +1,12 @@
 package com.zy.asrs.task;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.zy.asrs.entity.BasDevp;
+import com.zy.asrs.entity.OrderPakout;
 import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.service.DigitalTwinService;
+import com.zy.asrs.service.OrderPakoutService;
 import com.zy.asrs.service.WrkMastService;
 import com.zy.asrs.task.handler.JlerHandler;
 import org.springframework.scheduling.annotation.Scheduled;
@@ -24,6 +29,9 @@
     @Resource
     private WrkMastService wrkMastService;
 
+    @Resource
+    private OrderPakoutService orderPakoutService;
+
     /**
      * 璐х墿鍒拌揪鍏ュ簱鍙f帴椹充綅寮�濮嬪懠鍙枡绠辨満鍣ㄤ汉
      */
@@ -36,5 +44,54 @@
         }
     }
 
+
+    /**
+     * 鏍规嵁鍑哄簱璁㈠崟鑷姩鐢熸垚鍑哄簱浠诲姟
+     */
+    @Scheduled(cron = "0/8 * * * * ? ")
+    private void autoGenerateOutTask() {
+        OrderPakout orderPakout = orderPakoutService.selectOne(new EntityWrapper<OrderPakout>().eq("settle", 1));
+        if (orderPakout == null) {
+            return;
+        }
+
+        jlerHandler.autoGenerateOutTask(orderPakout);
+    }
+
+    @Resource
+    private BasDevpService basDevpService;
+
+    /**
+     * 鏍规嵁鍑哄簱浠诲姟鑷姩鍛煎彨鏂欑鏈哄櫒浜烘惉杩�
+     */
+    @Scheduled(cron = "0/10 * * * * ? ")
+    private void outboundCallBinRobot() {
+        // 鍒ゆ柇杈撻�佺嚎鏈夊灏戣揣
+        int loadingCount = basDevpService.selectCount(new EntityWrapper<BasDevp>().eq("loading", "Y"));
+
+        // 鍒ゆ柇鏈夊灏戝嚭搴撲换鍔″湪鎵ц
+        int execCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("wrk_sts", 12));
+        // 鍒ゆ柇杩樿兘鍙戝嚑涓嚭搴撲换鍔�
+        int count = 6 - loadingCount - execCount;
+        if (count <= 0) {
+            return;
+        }
+        List<WrkMast> wrkMastList = wrkMastService.selectList(new EntityWrapper<WrkMast>().setSqlSelect("TOP " + count + " *").eq("source_sta_no", 101).eq("wrk_sts", 11).orderBy("io_type"));
+        for (WrkMast wrkMast : wrkMastList) {
+            jlerHandler.outboundCallBinRobot(wrkMast);
+        }
+    }
+
+    @Resource
+    private DigitalTwinService digitalTwinService;
+
+    /**
+     * 瀹氭椂缁熻姣忓ぉ鍓╀綑搴撳瓨
+     */
+    @Scheduled(cron = "0 50 23 * * ?")
+    private void locNumCount() {
+        digitalTwinService.locNumCount();
+    }
+
 }
 

--
Gitblit v1.9.1