From d73aea22606a34be4d704c130f1a8444af58f5a8 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期三, 15 十一月 2023 11:14:09 +0800
Subject: [PATCH] agv任务生成逻辑更改

---
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java |   23 ++++++++++++++++++-----
 1 files changed, 18 insertions(+), 5 deletions(-)

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 73433b6..f7f3e71 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -10,6 +10,7 @@
 import com.zy.asrs.task.core.ReturnT;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -20,6 +21,9 @@
 @Slf4j
 @Service
 public class AgvWrkMastHandler extends AbstractHandler<String> {
+
+    @Value("${agvBasDev.maxWorkNum}")
+    private int maxWrokNum;
 
     @Autowired
     private AgvWrkMastService agvWrkMastService;
@@ -194,11 +198,20 @@
     public ReturnT<String> dealWatiWrk(List<AgvWrkMast> agvWrkMastList) throws IOException {
 
         agvWrkMastList.forEach(agvWrkMast -> {
-            //瀵绘壘绌虹珯鐐逛綅缃�
-            AgvBasDevp agvBasDevp = agvBasDevpService.selectEmptyDevpByStation(agvWrkMast.getLocNo());
-            if(!Cools.isEmpty(agvBasDevp)){
-                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvBasDevp.getDevNo(),"S",null);
-                agvWrkMast.setLocNo(agvBasDevp.getDevNo());
+//            //瀵绘壘绌虹珯鐐逛綅缃�
+//            AgvBasDevp agvBasDevp = agvBasDevpService.selectEmptyDevpByStation(agvWrkMast.getLocNo());
+//            if(!Cools.isEmpty(agvBasDevp)){
+//                agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvBasDevp.getDevNo(),"S",null);
+//                agvWrkMast.setLocNo(agvBasDevp.getDevNo());
+//                agvWrkMastService.updateById(agvWrkMast);
+//            }
+
+            //鏌ヨ璇ョ珯鐐规墍鏈夋殏瀛樹綅鍦ㄥ伐浣滄。涓嚭鐜扮殑娆℃暟
+            List<Map<String, Object>> devNoMaps = agvBasDevpService.selectDevNoAndNumBystationCode(agvWrkMast.getLocNo());
+            //鍙栫涓�涓殏瀛樹綅锛屽苟鏌ヨ鍏舵鏁颁笌閰嶇疆鐨勬鏁板仛姣旇緝
+            Map<String, Object> devNoMap = devNoMaps.get(0);
+            if((int)devNoMap.get("num") < maxWrokNum){
+                agvWrkMast.setLocNo(devNoMap.get("dev_no").toString());
                 agvWrkMastService.updateById(agvWrkMast);
             }
 

--
Gitblit v1.9.1