From ebd2f4397a92c6a5096de1b86d59154363344720 Mon Sep 17 00:00:00 2001 From: vincentlu <t1341870251@gmail.com> Date: 星期二, 13 五月 2025 08:48:15 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/utils/RouteGenerator.java | 45 ++++++++++++++++++++++++++++++++++++++------- 1 files changed, 38 insertions(+), 7 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/utils/RouteGenerator.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/utils/RouteGenerator.java index f2c9b62..fd590c9 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/utils/RouteGenerator.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/utils/RouteGenerator.java @@ -4,10 +4,10 @@ import com.zy.acs.manager.core.service.astart.CodeNodeType; import com.zy.acs.manager.core.service.astart.MapDataDispatcher; import com.zy.acs.manager.manager.entity.Code; -import com.zy.acs.manager.manager.entity.Route; import com.zy.acs.manager.manager.service.CodeGapService; import com.zy.acs.manager.manager.service.CodeService; import com.zy.acs.manager.manager.service.RouteService; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -17,6 +17,7 @@ /** * Created by vincent on 12/9/2024 */ +@Slf4j @Component public class RouteGenerator { @@ -29,8 +30,30 @@ @Autowired private CodeGapService codeGapService; - public List<Route> generateRoutes(String[][] codeMatrix) { - List<Route> routes = new ArrayList<>(); + public static String generateRouteKey(String codeData0, String codeData1) { + if (Cools.isEmpty(codeData0, codeData1)) { + return null; + } + if (codeData0.compareTo(codeData1) < 0) { + return codeData0 + "-" + codeData1; + } else { + return codeData1 + "-" + codeData0; + } + } + + public static String generateRouteCdaKey(int[] code0Cda, int[] code1Cda) { + if (Cools.isEmpty(code0Cda, code1Cda)) { + return null; + } + if (code0Cda[0] < code1Cda[0] || (code0Cda[0] == code1Cda[0] && code0Cda[1] < code1Cda[1])) { + return code0Cda[0] + "," + code0Cda[1] + "-" + code1Cda[0] + "," + code1Cda[1]; + } else { + return code1Cda[0] + "," + code1Cda[1] + "-" + code0Cda[0] + "," + code0Cda[1]; + } + } + + public List<String> generateRoutes(String[][] codeMatrix) { + List<String> list = new ArrayList<>(); int rows = codeMatrix.length; int cols = codeMatrix[0].length; @@ -44,14 +67,18 @@ if (currentCodeData == null || CodeNodeType.NONE.val.equals(currentCodeData)) { continue; } - Code currCode = codeService.selectByData(currentCodeData); + Code currCode = codeService.getCacheByData(currentCodeData); // 妫�鏌ュ彸杈圭浉閭绘潯鐮� if (j + 1 < cols) { String rightCodeData = codeMatrix[i][j + 1]; if (!Cools.isEmpty(rightCodeData) && !CodeNodeType.NONE.val.equals(rightCodeData)) { - Code rightCode = codeService.selectByData(rightCodeData); + Code rightCode = codeService.getCacheByData(rightCodeData); + list.add(currCode.getData() + "-" + rightCode.getData()); routeService.createRouteByCode(currCode, rightCode, 0, null); + codeGapService.createCodeGapByCode(currCode, rightCode, null); + + log.info(currCode.getData() + "-" + rightCode.getData() + " [finished]"); } } @@ -59,14 +86,18 @@ if (i + 1 < rows) { String bottomCodeData = codeMatrix[i + 1][j]; if (!Cools.isEmpty(bottomCodeData) && !CodeNodeType.NONE.val.equals(bottomCodeData)) { - Code bottomCode = codeService.selectByData(bottomCodeData); + Code bottomCode = codeService.getCacheByData(bottomCodeData); + list.add(currCode.getData() + "-" + bottomCode.getData()); routeService.createRouteByCode(currCode, bottomCode, 0, null); + codeGapService.createCodeGapByCode(currCode, bottomCode, null); + + log.info(currCode.getData() + "-" + bottomCode.getData() + " [finished]"); } } } } - return routes; + return list; } -- Gitblit v1.9.1