From 613b59f94870adb25b6dd1e8a1aba8cbb670288e Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 18 十二月 2024 14:21:21 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java | 27 +++++++++++++++++++++++---- 1 files changed, 23 insertions(+), 4 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java index 5411381..62dc062 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java @@ -8,15 +8,15 @@ import com.zy.acs.framework.exception.CoolException; import com.zy.acs.manager.core.domain.SortCodeDto; import com.zy.acs.manager.core.service.astart.domain.DynamicNode; +import com.zy.acs.manager.core.utils.RouteGenerator; import com.zy.acs.manager.manager.entity.Code; +import com.zy.acs.manager.manager.entity.Route; +import com.zy.acs.manager.manager.enums.StatusType; import com.zy.acs.manager.manager.service.CodeService; import com.zy.acs.manager.manager.service.RouteService; import lombok.extern.slf4j.Slf4j; -import java.util.ArrayList; -import java.util.Comparator; -import java.util.List; -import java.util.Optional; +import java.util.*; import java.util.stream.Collectors; /** @@ -330,6 +330,25 @@ return mapMatrix; } + public synchronized void initRouteMap(Integer lev) { + log.info("There is initializing Route Map......"); + lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); + Set<String> routeKeys = redis.getMapKeys(RedisConstant.AGV_MAP_ROUTE_HASH_FLAG); + List<Route> routeList = routeService.list(new LambdaQueryWrapper<Route>().eq(Route::getStatus, StatusType.ENABLE.val)); + if (routeKeys.size() == routeList.size()) { + return; + } + for (Route route : routeList) { + Code startCode = codeService.getById(route.getStartCode()); + Code endCode = codeService.getById(route.getEndCode()); + String routeKey = RouteGenerator.generateRouteKey(startCode.getData(), endCode.getData()); + if (Cools.isEmpty(routeKey)) { + continue; + } + redis.setMap(RedisConstant.AGV_MAP_ROUTE_HASH_FLAG, routeKey, Boolean.TRUE); + } + } + public synchronized String[][] initCodeMatrix(Integer lev) { log.info("There is initializing Code Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); -- Gitblit v1.9.1