From 830d326b37c4a5d13ae55678d5729993908f9c90 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 18 十二月 2025 10:36:56 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AreaGovernService.java          |    5 +++--
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/FuncStaServiceImpl.java |   20 ++++++++++----------
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvAreaDispatcher.java          |    8 ++++----
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java              |    7 ++-----
 4 files changed, 19 insertions(+), 21 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvAreaDispatcher.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvAreaDispatcher.java
index e4b225b..71829bb 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvAreaDispatcher.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvAreaDispatcher.java
@@ -12,7 +12,6 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.PostConstruct;
-import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
@@ -72,9 +71,10 @@
         return null;
     }
 
-    public List<String> getAreaCodeListByAgvNo(String agvNo) {
-        List<String> areaCodeList = new ArrayList<>();
-        return areaCodeList;
+    // 濡傛灉閮芥病鏈夊懡涓紝灏辫繑鍥炲叏閮╟ode
+    public List<String> getCodesByAgvId(Long agvId) {
+        List<Long> areaIds = areaAgvService.queryAreaIdsByAgvId(agvId);
+        return areaGovernService.queryCodes(areaIds);
     }
 
 }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AreaGovernService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AreaGovernService.java
index 707b840..875f8b6 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AreaGovernService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AreaGovernService.java
@@ -10,6 +10,7 @@
 import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
 import com.zy.acs.manager.manager.entity.Area;
 import com.zy.acs.manager.manager.enums.StatusType;
+import com.zy.acs.manager.manager.service.AreaAgvService;
 import com.zy.acs.manager.manager.service.AreaService;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
@@ -35,6 +36,8 @@
     private AreaService areaService;
     @Autowired
     private MapDataDispatcher mapDataDispatcher;
+    @Autowired
+    private AreaAgvService areaAgvService;
 
     // launcher -------------------------------------------------------
     @EventListener(ApplicationReadyEvent.class)
@@ -107,8 +110,6 @@
 //            String areaDataStr = redis.getValue(RedisConstant.MAP_AREA_DATA_FLAG, redisKey);
 //
 //        }
-
-        System.out.println(1);
     }
 
     // checkout list of area by code data
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
index 104eb4b..f9a7752 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/PatrolService.java
@@ -74,9 +74,7 @@
     @Autowired
     private AgvModelService agvModelService;
     @Autowired
-    private AreaAgvService areaAgvService;
-    @Autowired
-    private AreaGovernService areaGovernService;
+    private AgvAreaDispatcher agvAreaDispatcher;
 
     @PostConstruct
     public void init() {
@@ -222,8 +220,7 @@
         Set<String> notInCodeSet = new HashSet<>();
 
 //        Collections.shuffle(CODE_DATA_CACHE);
-        List<Long> areaIds = areaAgvService.queryAreaIdsByAgvId(agvDetail.getAgvId());
-        List<String> codeList = areaGovernService.queryCodes(areaIds);
+        List<String> codeList = agvAreaDispatcher.getCodesByAgvId(agvDetail.getAgvId());
         Collections.shuffle(codeList);
 
         for (String endCodeData : codeList) {
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/FuncStaServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/FuncStaServiceImpl.java
index 2ec809c..bb6dfe4 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/FuncStaServiceImpl.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/FuncStaServiceImpl.java
@@ -61,16 +61,16 @@
         }
 
         // area limit
-//        List<String> areaCodeList = agvAreaDispatcher.getAreaCodeListByAgvNo(agvService.getAgvNo(agvId));
-//        if (Cools.isEmpty(areaCodeList)) {
-//            funcStaList.clear();
-//        } else {
-//            funcStaList.removeIf(funcSta -> {
-//                Code code = codeService.getCacheById(funcSta.getCode());
-//                if (Cools.isEmpty(code, code.getData())) { return true; }
-//                return !areaCodeList.contains(code.getData());
-//            });
-//        }
+        List<String> areaCodeList = agvAreaDispatcher.getCodesByAgvId(agvId);
+        if (Cools.isEmpty(areaCodeList)) {
+            funcStaList.clear();
+        } else {
+            funcStaList.removeIf(funcSta -> {
+                Code code = codeService.getCacheById(funcSta.getCode());
+                if (Cools.isEmpty(code, code.getData())) { return true; }
+                return !areaCodeList.contains(code.getData());
+            });
+        }
 
         if (!Cools.isEmpty(funcStaList)) {
             Collections.shuffle(funcStaList);

--
Gitblit v1.9.1