From f5e7194351d3720f67c29c2fe2a19eea0014a044 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期三, 22 十一月 2023 21:51:56 +0800
Subject: [PATCH] 任务下发bug修复

---
 src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java          |    8 ++++----
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java    |   26 +++++++++++++++++++++++++-
 src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java |   10 ----------
 3 files changed, 29 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
index c98b79c..dc74a33 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWrkMastServiceImp.java
@@ -77,9 +77,6 @@
 
     public int startWrk(List<AgvWrkMast> agvWrkMastList, String taskType) throws IOException {
 
-        //浠诲姟杩囨护锛岃繃婊ゆ帀宸插瓨鍦ㄧ浉鍚岀洰鏍囧簱浣嶇殑宸ヤ綔妗�
-        agvWrkMastList = filter(agvWrkMastList);
-
         AgvTaskCreateParam agvTaskCreateParam = new AgvTaskCreateParam();
         agvTaskCreateParam.setTaskType(taskType);
 
@@ -152,13 +149,6 @@
     @Override
     public AgvWrkMast selectByContainerCode(String containerCode) {
         return this.selectOne(new EntityWrapper<AgvWrkMast>().eq("barcode",containerCode));
-    }
-
-    private List<AgvWrkMast> filter(List<AgvWrkMast> agvWrkMastList){
-        return agvWrkMastList.stream().filter(agvWrkMast -> {
-            int num = this.selectCount(new EntityWrapper<AgvWrkMast>().eq("loc_no", agvWrkMast.getLocNo()));
-            return num <= maxWrokNum;
-        }).collect(Collectors.toList());
     }
 
     private void getContainerMoveParam(List<AgvWrkMast> agvWrkMastList,List<Map<String,String>> positionCodeMapList){
diff --git a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
index d9cf22c..3bfcbea 100644
--- a/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AgvWrkMastScheduler.java
@@ -39,7 +39,7 @@
     /*
     瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负205.宸ヤ綔瀹屾垚 涓� 锛�1.鍏ュ簱 || 53锛屾嫞鏂欏叆搴� || 57.鐩樼偣鍏ュ簱 || 10.绌烘澘鍏ュ簱 || 11.搴撴牸绉昏浇)鐨勬暟鎹�
      */
-    @Scheduled(cron = "0/5 * * * * ? ")
+    @Scheduled(cron = "0/10 * * * * ? ")
     public void excutePutwayWrk(){
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
                 .eq("wrk_sts", 205)
@@ -58,7 +58,7 @@
     /*
     瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负206.瀹瑰櫒绂诲満瀹屾垚 涓� (101.鍑哄簱 || 110.绌烘澘鍑哄簱)
      */
-    @Scheduled(cron = "0/5 * * * * ? ")
+    @Scheduled(cron = "0/10 * * * * ? ")
     public void excuteCarryWrk(){
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectList(new EntityWrapper<AgvWrkMast>()
                 .eq("wrk_sts", 206)
@@ -75,7 +75,7 @@
     putaway锛氫笂鏋�
     瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负201.鐢熸垚鍏ュ簱浠诲姟ID 涓�(鍑哄簱绫诲瀷涓� 53.鎷f枡鍐嶅叆搴� || 1.鍏ュ簱 || 10.绌烘澘鍏ュ簱鏍� || 57.鐩樼偣鍐嶅叆搴�)鐨勬暟鎹�
      */
-    @Scheduled(cron = "0/5 * * * * ? ")
+    @Scheduled(cron = "0/10 * * * * ? ")
     public void startPutwayWrk(){
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50)
                 ,new EntityWrapper<AgvWrkMast>()
@@ -98,7 +98,7 @@
     carry锛氭惉杩愶紝缁熸寚鍑哄簱銆佺Щ搴撱�佺偣鍒扮偣鎼繍绛�
     瀹氭椂澶勭悊AGV宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负21.鐢熸垚鍑哄簱浠诲姟 涓�(鍑哄簱绫诲瀷涓� 101.鍑哄簱 || 103.鎷f枡鍑哄簱 || 11.搴撴牸绉绘牻 || 110.绌烘澘鍑哄簱 || 107.鐩樼偣鍑哄簱)鐨勬暟鎹�
      */
-    @Scheduled(cron = "0/5 * * * * ? ")
+    @Scheduled(cron = "0/10 * * * * ? ")
     public void startCarryWrk(){
         List<AgvWrkMast> agvWrkMastList = agvWrkMastService.selectPage(new Page<>(1, 50)
                 ,new EntityWrapper<AgvWrkMast>()
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index b22bdd1..7ea6bfb 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -4,7 +4,10 @@
 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.entity.AgvLocDetl;
+import com.zy.asrs.entity.AgvWaitPakin;
+import com.zy.asrs.entity.AgvWrkDetl;
+import com.zy.asrs.entity.AgvWrkMast;
 import com.zy.asrs.service.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
@@ -18,6 +21,7 @@
 import java.io.IOException;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 @Slf4j
 @Service
@@ -178,7 +182,14 @@
 
     @Transactional
     public ReturnT<String> startCarryWrk(List<AgvWrkMast> agvWrkMastList) throws IOException {
+        log.info(agvWrkMastList.toString());
+        //浠诲姟杩囨护锛岃繃婊ゆ帀宸插瓨鍦ㄧ浉鍚岀洰鏍囧簱浣嶇殑宸ヤ綔妗�
+        agvWrkMastList = filter(agvWrkMastList);
         int code = agvWrkMastService.startWrk(agvWrkMastList,"carry");
+        log.info(agvWrkMastList.toString());
+        if (Cools.isEmpty(agvWrkMastList)){
+            return SUCCESS;
+        }
         if(code == 0){
             agvWrkMastList.forEach(agvWrkMast -> {
                 //202.RCS鍙栬揣涓�
@@ -234,4 +245,17 @@
             }
         }
     }
+
+    private List<AgvWrkMast> filter(List<AgvWrkMast> agvWrkMastList){
+        return agvWrkMastList.stream().filter(agvWrkMast -> {
+            AgvWrkMast agvWrkMastWroking = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("source_loc_no", agvWrkMast.getLocNo()));
+            if(!Cools.isEmpty(agvWrkMastWroking) && agvWrkMastWroking.getWrkSts()<=202){
+                System.out.println("source_loc_no > 1");
+                return false;
+            }
+            log.info(agvWrkMast.toString());
+            int num = agvWrkMastService.selectCount(new EntityWrapper<AgvWrkMast>().eq("loc_no", agvWrkMast.getLocNo()));
+            return num <= maxWrokNum;
+        }).collect(Collectors.toList());
+    }
 }

--
Gitblit v1.9.1