From a33d5ee3bd3907be492001ffba7969b468f86807 Mon Sep 17 00:00:00 2001
From: zjj <zjj123456>
Date: 星期五, 12 四月 2024 10:04:51 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/utils/RouteUtils.java |  133 +++++++++++++++++++++++++++-----------------
 1 files changed, 81 insertions(+), 52 deletions(-)

diff --git a/src/main/java/com/zy/asrs/utils/RouteUtils.java b/src/main/java/com/zy/asrs/utils/RouteUtils.java
index cba980b..32f7b51 100644
--- a/src/main/java/com/zy/asrs/utils/RouteUtils.java
+++ b/src/main/java/com/zy/asrs/utils/RouteUtils.java
@@ -14,7 +14,7 @@
 
     //闂2  鍛ㄤ繆鏉�
     public static final List<Integer> MERGE_STA_NO_One = new ArrayList<Integer>() {{
-//        add(116);add(117);
+        add(113);add(119);
     }};
 
     public static final List<Integer> MERGE_STA_NO_TWO = new ArrayList<Integer>() {{
@@ -31,11 +31,11 @@
 
 //    姝e簭
     public static final List<Integer> TRACK_POSITION_POSITIVE_SEQUENCE = new ArrayList<Integer>() {{
-        add(161);add(157);add(153);add(149);add(124);add(119);add(113);add(999);;add(112);add(107);add(106);add(101);add(100);
+        add(161);add(157);add(153);add(149);add(124);add(119);add(113);add(112);add(107);add(106);add(101);add(100);
     }};
 //    鍙嶅簭
     public static final List<Integer> TRACK_POSITION_REVERSE_SEQUENCE = new ArrayList<Integer>() {{
-        add(100);add(101);add(106);add(107);add(112);add(999);add(113);add(119);add(124);add(149);add(153);add(157);add(161);
+        add(100);add(101);add(106);add(107);add(112);add(113);add(119);add(124);add(149);add(153);add(157);add(161);
     }};
 
     public static String zerofill(String msg, Integer count){
@@ -110,10 +110,10 @@
     * 鑾峰彇鏈�杩滅珯鐐�
     * */
     public static Integer RouteIndexFarMas(Integer a,Integer b,Integer c,Integer d){
-        int ia = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(a);
-        int ib = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(b);
-        int ic = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(c);
-        int id = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(d);
+        int ia = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(a); //褰撳墠浣嶇疆
+        int ib = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(b); //鍦板浘寮�濮嬩綅缃�
+        int ic = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(c); //鍦板浘缁撴潫浣嶇疆
+        int id = TRACK_POSITION_POSITIVE_SEQUENCE.indexOf(d); //閿佺粨鏉熶綅缃�
         if (id==0){
             if (ia>ib){
                 if (ia>ic){
@@ -232,55 +232,84 @@
         return getRouteIntersection(getRoute(a, c), getRoute(b, c), RouteCollectCountType.DEDUPLICATIONUNION);
     }
 
+    public static Short CrnStaEnd(Integer endSta,Integer souSta) {
+        switch (endSta) {
+            case 100:
+                if (souSta == 118){
+                    return (short)119;
+                }
+                return (short)149;
+            case 102:
+            case 111:
+                return 149;
+            default:
+                return endSta.shortValue();
+        }
+    }
+
+    public static  Short SouStaEnd(Integer endSta,Integer souSta){
+       if (souSta == 159) {
+           return (short)161;
+       }
+       return souSta.shortValue();
+    }
+
 
 
     public static void main(String[] arge){
-        List<Integer> routeCurrent = getRoute(100, 124);  //鑾峰彇褰撳墠灏忚溅璺緞
-        List<Integer> routeOther = getRoute(149, 161);  //鑾峰彇鍏跺畠灏忚溅璺緞
-        System.out.println("褰撳墠灏忚溅璺緞:\t"+routeCurrent);
-        System.out.println("鍏跺畠灏忚溅璺緞:\t"+routeOther);
+        //{"endRoute":999,"lockEndRoute":124,"lockStartRoute":161,"nowRoute":161,"rgvNo":3,"rgvStatus":0,"startRoute":161}   3hao
+        Integer i = RouteIndexFarMas(112, 161, 124, 161);
+        System.out.println(i);
+        //{"endRoute":119,"lockEndRoute":112,"lockStartRoute":100,"nowRoute":112,"rgvNo":2,"rgvStatus":0,"startRoute":100} 2
+        Integer i1 = RouteIndexFarMas(112, 100, 112, 100);
+        System.out.println(i1);
 
-        boolean routeBoolean = getRouteBoolean(routeCurrent, routeOther);  //鏄惁鏈変氦闆�
-        System.out.println("鏄惁鏈変氦闆�:\t"+routeBoolean);
-
-        List<Integer> routeIntersection = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.INTERSECTION);//浜ら泦
-        System.out.println("璺緞浜ら泦锛歕t"+routeIntersection);
-
-        List<Integer> routeIntersection1 = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.DIFFERENCESET);//宸泦
-        System.out.println("璺緞宸泦锛歕t"+routeIntersection1);
-
-        List<Integer> routeIntersection2 = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.UNION);//骞堕泦
-        System.out.println("璺緞骞堕泦锛歕t"+routeIntersection2);
-
-        List<Integer> routeIntersection3 = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.DEDUPLICATIONUNION);//鍘婚噸骞堕泦
-        System.out.println("璺緞鍘婚噸骞堕泦锛歕t"+routeIntersection3);
-
-        /*
-         * a  灏忚溅褰撳墠浣嶇疆
-         * b  灏忚溅浠诲姟寮�濮嬩綅缃�
-         * c  灏忚溅浠诲姟缁撴潫浣嶇疆
-         * sign  鍙︿竴涓皬杞︾┖闂叉爣璁�
-         * */
-        System.out.println("鏄惁鏈変氦闆嗭細\t"+RouteAutoBoolean(100,101,124,149,161,153,true));   //鏄惁鏈変氦闆�  true鏃犱氦闆�  false鏈変氦闆�
-
-        /*
-         * a  灏忚溅褰撳墠浣嶇疆
-         * b  灏忚溅浠诲姟寮�濮嬩綅缃�
-         * c  灏忚溅浠诲姟缁撴潫浣嶇疆
-         * d  灏忚溅鍒濆浣嶇疆
-         * 鑾峰彇鏈�澶ц矾寰勫樊鍊�
-         * */
-        List<Integer> routeDIFF = RouteMapCurrentFar(100,101,124,149);
-        System.out.println("褰撳墠璺緞鏈�澶ч泦鍚堬細\t"+ routeDIFF);
-
-        Integer routeFarOther= RouteMapOtherFarStnNo(routeDIFF,124);
-        System.out.println("鍙︿竴鍙板皬杞︽渶杩滅珯鐐癸細\t"+routeFarOther);
-
-
-        Integer[] integers = RouteIndexFarArr(100,101,124,149);
-        for (Integer integer:integers){
-            System.out.println(integer);
-        }
+//        List<Integer> routeCurrent = getRoute(100, 124);  //鑾峰彇褰撳墠灏忚溅璺緞
+//        List<Integer> routeOther = getRoute(149, 161);  //鑾峰彇鍏跺畠灏忚溅璺緞
+//        System.out.println("褰撳墠灏忚溅璺緞:\t"+routeCurrent);
+//        System.out.println("鍏跺畠灏忚溅璺緞:\t"+routeOther);
+//
+//        boolean routeBoolean = getRouteBoolean(routeCurrent, routeOther);  //鏄惁鏈変氦闆�
+//        System.out.println("鏄惁鏈変氦闆�:\t"+routeBoolean);
+//
+//        List<Integer> routeIntersection = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.INTERSECTION);//浜ら泦
+//        System.out.println("璺緞浜ら泦锛歕t"+routeIntersection);
+//
+//        List<Integer> routeIntersection1 = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.DIFFERENCESET);//宸泦
+//        System.out.println("璺緞宸泦锛歕t"+routeIntersection1);
+//
+//        List<Integer> routeIntersection2 = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.UNION);//骞堕泦
+//        System.out.println("璺緞骞堕泦锛歕t"+routeIntersection2);
+//
+//        List<Integer> routeIntersection3 = getRouteIntersection(routeCurrent, routeOther, RouteCollectCountType.DEDUPLICATIONUNION);//鍘婚噸骞堕泦
+//        System.out.println("璺緞鍘婚噸骞堕泦锛歕t"+routeIntersection3);
+//
+//        /*
+//         * a  灏忚溅褰撳墠浣嶇疆
+//         * b  灏忚溅浠诲姟寮�濮嬩綅缃�
+//         * c  灏忚溅浠诲姟缁撴潫浣嶇疆
+//         * sign  鍙︿竴涓皬杞︾┖闂叉爣璁�
+//         * */
+//        System.out.println("鏄惁鏈変氦闆嗭細\t"+RouteAutoBoolean(100,101,124,149,161,153,true));   //鏄惁鏈変氦闆�  true鏃犱氦闆�  false鏈変氦闆�
+//
+//        /*
+//         * a  灏忚溅褰撳墠浣嶇疆
+//         * b  灏忚溅浠诲姟寮�濮嬩綅缃�
+//         * c  灏忚溅浠诲姟缁撴潫浣嶇疆
+//         * d  灏忚溅鍒濆浣嶇疆
+//         * 鑾峰彇鏈�澶ц矾寰勫樊鍊�
+//         * */
+//        List<Integer> routeDIFF = RouteMapCurrentFar(100,101,124,149);
+//        System.out.println("褰撳墠璺緞鏈�澶ч泦鍚堬細\t"+ routeDIFF);
+//
+//        Integer routeFarOther= RouteMapOtherFarStnNo(routeDIFF,124);
+//        System.out.println("鍙︿竴鍙板皬杞︽渶杩滅珯鐐癸細\t"+routeFarOther);
+//
+//
+//        Integer[] integers = RouteIndexFarArr(100,101,124,149);
+//        for (Integer integer:integers){
+//            System.out.println(integer);
+//        }
     }
 
 }

--
Gitblit v1.9.1