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