From d3d3857cda8b4307d8f03bf15ec9fb2c98c34b64 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 17 十二月 2024 09:58:39 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/astart/MapDataDispatcher.java | 33 ++++++++++++++++++++++----------- 1 files changed, 22 insertions(+), 11 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 683984a..1f21be5 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 @@ -2,10 +2,11 @@ import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.zy.acs.framework.common.Cools; -import com.zy.acs.framework.exception.CoolException; import com.zy.acs.common.constant.RedisConstant; import com.zy.acs.common.utils.RedisSupport; +import com.zy.acs.framework.common.Cools; +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.manager.entity.Code; import com.zy.acs.manager.manager.service.CodeService; @@ -13,8 +14,10 @@ import lombok.extern.slf4j.Slf4j; import java.util.ArrayList; +import java.util.Comparator; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; /** * Created by vincent on 6/6/2024 @@ -26,7 +29,7 @@ private final RedisSupport redis = RedisSupport.defaultRedisSupport; - public static final Boolean CACHE_CODE_MATRIX = Boolean.FALSE; + public static final Boolean CACHE_CODE_MATRIX = Boolean.TRUE; private String[][] codeMatrix; @@ -34,11 +37,11 @@ private int[][] mapMatrix; - public static final Boolean CACHE_TURN_MATRIX = Boolean.FALSE; + public static final Boolean CACHE_TURN_MATRIX = Boolean.TRUE; private int[][] turnMatrix; - public static final Boolean CACHE_CDA_MATRIX = Boolean.FALSE; + public static final Boolean CACHE_CDA_MATRIX = Boolean.TRUE; private String[][] cdaMatrix; @@ -228,6 +231,7 @@ } public String[][] initWaveMatrix(Integer lev) { + log.info("There is initializing Wave Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); String[][] codeMatrix = getCodeMatrix(lev); @@ -247,6 +251,7 @@ } public synchronized DynamicNode[][] initDynamicMatrix(Integer lev) { + log.info("There is initializing Dynamic Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); String[][] codeMatrix = getCodeMatrix(lev); @@ -266,6 +271,7 @@ } public synchronized String[][] initCdaMatrix(Integer lev) { + log.info("There is initializing Cda Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); String[][] codeMatrix = getCodeMatrix(lev); @@ -294,6 +300,7 @@ } public synchronized int[][] initTurnMatrix(Integer lev) { + log.info("There is initializing Turn Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); String[][] codeMatrix = getCodeMatrix(lev); @@ -342,6 +349,7 @@ public synchronized int[][] initMapMatrix(Integer lev) { + log.info("There is initializing Map Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); String[][] codeMatrix = getCodeMatrix(lev); @@ -363,7 +371,7 @@ } public synchronized String[][] initCodeMatrix(Integer lev) { - log.info("銆怉STAR銆戞鍦ㄨ绠楃煩闃垫暟鎹�......"); + log.info("There is initializing Code Matrix......"); lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); List<Code> codeList = codeService.list(new LambdaQueryWrapper<Code>() .eq(Code::getStatus, 1) @@ -447,21 +455,24 @@ } public List<String> queryCodeListFromDynamicNode(Integer lev, String nodeType) { - List<String> nodes = new ArrayList<>(); if (Cools.isEmpty(nodeType)) { - return nodes; + return new ArrayList<>(); } lev = Optional.ofNullable(lev).orElse(MAP_DEFAULT_LEV); + + List<SortCodeDto> codeList = new ArrayList<>(); DynamicNode[][] dynamicMatrix = getDynamicMatrix(lev); String[][] codeMatrix = this.getCodeMatrix(lev); for (int i = 0; i < codeMatrix.length; i++) { for (int j = 0; j < codeMatrix[i].length; j++) { - if (nodeType.equals(dynamicMatrix[i][j].getVehicle())) { - nodes.add(codeMatrix[i][j]); + DynamicNode dynamicNode = dynamicMatrix[i][j]; + if (nodeType.equals(dynamicNode.getVehicle())) { + codeList.add(new SortCodeDto(codeMatrix[i][j], dynamicNode.getSerial())); } } } - return nodes; + codeList.sort(Comparator.comparingInt(SortCodeDto::getSerial)); + return codeList.stream().map(SortCodeDto::getCode).collect(Collectors.toList()); } public void modifyDynamicMatrix(Integer lev, List<String> codeList, String vehicle) { -- Gitblit v1.9.1