From 590a64af2cdd33427ed8eda2eb983b07dd60ab8b Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期五, 16 一月 2026 12:05:12 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AreaGovernService.java | 72 ++++++++++++++++++-----------------
1 files changed, 37 insertions(+), 35 deletions(-)
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 b8d9e60..1a45b15 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,17 +10,15 @@
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;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.context.event.ApplicationReadyEvent;
-import org.springframework.context.event.EventListener;
import org.springframework.stereotype.Service;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
+import javax.annotation.PostConstruct;
+import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
@Slf4j
@@ -37,9 +35,12 @@
private AreaService areaService;
@Autowired
private MapDataDispatcher mapDataDispatcher;
+ @Autowired
+ private AreaAgvService areaAgvService;
// launcher -------------------------------------------------------
- @EventListener(ApplicationReadyEvent.class)
+// @EventListener(ApplicationReadyEvent.class)
+ @PostConstruct
public void init() {
List<Area> areaList = areaService.list(new LambdaQueryWrapper<Area>().eq(Area::getStatus, StatusType.ENABLE.val));
if (Cools.isEmpty(areaList)) {
@@ -84,33 +85,6 @@
}
}
-// for (Map.Entry<Long, List<String>> entry : AREA_CODE.entrySet()) {
-// Long areaId = entry.getKey();
-// List<String> codeList = entry.getValue();
-//
-// for (String code : codeList) {
-// Set<Long> agvList = CODE_AGV.computeIfAbsent(code, k -> new HashSet<>());
-// // todo AreaAGV( man_area_agv )
-//
-//
-// }
-// }
-
-
-// for (Area area : areaList) {
-// AreaShapeDto shapeDto = JSON.parseObject(area.getShapeData(), AreaShapeDto.class);
-// MapPointDto start = shapeDto.getStart();
-// MapPointDto end = shapeDto.getEnd();
-//
-// List<String> codeList = this.findCodesInArea(start, end);
-// log.info("codeList: {}", JSON.toJSONString(codeList));
-//
-// String redisKey = area.getName() + (area.getZoneId() != null ? "_" + area.getZoneId() : "");
-// String areaDataStr = redis.getValue(RedisConstant.MAP_AREA_DATA_FLAG, redisKey);
-//
-// }
-
- System.out.println(1);
}
// checkout list of area by code data
@@ -123,6 +97,32 @@
}
}
return areaIds;
+ }
+
+ // checkout list of code by code data
+ public List<String> queryCodesByOneCode(String code) {
+ Set<String> codeSet = new HashSet<>();
+ for (Map.Entry<Long, List<String>> entry : AREA_CODE.entrySet()) {
+ List<String> codeList = entry.getValue();
+ if (!Cools.isEmpty(codeList) && codeList.contains(code)) {
+ codeSet.addAll(codeList);
+ }
+ }
+ return new ArrayList<>(codeSet);
+ }
+
+ // checkout list of code by area ids
+ public List<String> queryCodes(List<Long> areaIds) {
+ if (Cools.isEmpty(areaIds)) {
+ return new ArrayList<>();
+ }
+
+ Set<String> codeList = new HashSet<>();
+ for (Long areaId : areaIds) {
+ List<String> strings = AREA_CODE.get(areaId);
+ codeList.addAll(strings);
+ }
+ return new ArrayList<>(codeList);
}
// reset and set new area
@@ -142,8 +142,10 @@
public Boolean removeArea(Long areaId) {
if (null == areaId) { return false; }
List<String> codeList = AREA_CODE.get(areaId);
- AREA_CODE.get(areaId).clear();
- AREA_CODE.remove(areaId);
+ if (!Cools.isEmpty(codeList)) {
+ AREA_CODE.get(areaId).clear();
+ AREA_CODE.remove(areaId);
+ }
return Boolean.TRUE;
}
--
Gitblit v1.9.1