From 6ea30a9291bfcf21fda724f9957405bbe3fecbd5 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期一, 15 四月 2024 15:34:44 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/RouteUtils.java | 164 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 141 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/RouteUtils.java b/src/main/java/com/zy/asrs/utils/RouteUtils.java index fd99eb5..5510f79 100644 --- a/src/main/java/com/zy/asrs/utils/RouteUtils.java +++ b/src/main/java/com/zy/asrs/utils/RouteUtils.java @@ -16,15 +16,35 @@ }}; public static final List<Integer> MERGE_STA_NO_TWO = new ArrayList<Integer>() {{ - add(116);add(117); + add(113);add(123);add(114);add(1142); }}; public static final List<Integer> MERGE_STA_NO_THREE = new ArrayList<Integer>() {{ - add(116);add(117); + add(107);add(118);add(108);add(119); }}; public static final List<Integer> MERGE_STA_NO_FOUR = new ArrayList<Integer>() {{ - add(116);add(117); + add(110);add(120);add(111);add(121); + }}; + + public static final List<Integer> MERGE_STA_NO_FIVE = new ArrayList<Integer>() {{ + add(104);add(122);add(105); + }}; + + public static final List<Integer> MERGE_STA_NO_SIX = new ArrayList<Integer>() {{ + add(108);add(119);add(110);add(120); + }}; + + public static final List<Integer> MERGE_STA_NO_SEVEN = new ArrayList<Integer>() {{ + + }}; + + public static final List<Integer> MERGE_STA_NO_EIGHT = new ArrayList<Integer>() {{ + + }}; + + public static final List<Integer> MERGE_STA_NO_NINE = new ArrayList<Integer>() {{ + }}; // 姝e簭 @@ -33,7 +53,7 @@ }}; // 鍙嶅簭 public static final List<Integer> TRACK_POSITION_REVERSE_SEQUENCE = new ArrayList<Integer>() {{ - add(117);add(116);add(1142);add(114);add(113);add(123);add(121);add(111);add(120);add(110);add(119);add(108);add(107);add(118);add(105);add(104);add(122);add(102);add(101); + add(117);add(116);add(1142);add(114);add(123);add(113);add(121);add(111);add(120);add(110);add(119);add(108);add(118);add(107);add(105);add(122);add(104);add(102);add(101); }}; public static String zerofill(String msg, Integer count){ @@ -49,28 +69,82 @@ return msgBuilder.toString(); } } +// /* +// * 鑾峰彇骞叉秹鏈�杩滅珯鐐� +// * */ +// public static Integer RouteIndexFarMas(int rgvNo,Integer staNo){ +// List<Integer> staFall = new ArrayList<>(); +// if (MERGE_STA_NO_SIX.contains(staNo)){ +// staFall = MERGE_STA_NO_SIX; +// }else if (MERGE_STA_NO_One.contains(staNo)){ +// staFall = MERGE_STA_NO_One; +// }else if (MERGE_STA_NO_TWO.contains(staNo)){ +// staFall = MERGE_STA_NO_TWO; +// }else if (MERGE_STA_NO_THREE.contains(staNo)){ +// staFall = MERGE_STA_NO_THREE; +// }else if (MERGE_STA_NO_FOUR.contains(staNo)){ +// staFall = MERGE_STA_NO_FOUR; +// }else if (MERGE_STA_NO_FIVE.contains(staNo)){ +// staFall = MERGE_STA_NO_FIVE; +// }else { +// return staNo; +// } +// +// int indexNo = 0; +// if (rgvNo==1){ +// indexNo=staFall.size()-1; +// } +// return staFall.get(indexNo); +// } + /* * 鑾峰彇骞叉秹鏈�杩滅珯鐐� * */ public static Integer RouteIndexFarMas(int rgvNo,Integer staNo){ - List<Integer> staFall = new ArrayList<>(); - if (MERGE_STA_NO_One.contains(staNo)){ - staFall = MERGE_STA_NO_One; - }else if (MERGE_STA_NO_TWO.contains(staNo)){ - staFall = MERGE_STA_NO_TWO; - }else if (MERGE_STA_NO_THREE.contains(staNo)){ - staFall = MERGE_STA_NO_THREE; - }else if (MERGE_STA_NO_FOUR.contains(staNo)){ - staFall = MERGE_STA_NO_FOUR; - }else { - return staNo; - } - - int indexNo = 0; if (rgvNo==1){ - indexNo=staFall.size()-1; + switch (staNo){ + case 101: + case 102: return 102; + case 104: + case 122: return 118; + case 105: return 119; + case 107: + case 118: return 120; + case 108: + case 119: return 111; + case 110: + case 120: return 113; + case 111: + case 121: return 113; + case 113: return 114; + case 123: + case 114: return 1142; + default: + return 116; + } + }else { + switch (staNo){ + case 117: + case 116: return 1142; + case 1142: + case 114: return 113; + case 123: + case 113: return 111; + case 121: + case 111: return 108; + case 120: + case 110: return 107; + case 119: + case 108: return 107; + case 118: + case 107: return 105; + case 105: + case 122: + case 104: return 104; + default: + return 102; + } } - return staFall.get(indexNo); } @@ -108,6 +182,49 @@ * 鑾峰彇鏈�杩滅珯鐐� * */ 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); + if (id==0){ + if (ia>ib){ + if (ia>ic){ + return a; + }else { + return c; + } + }else { + if (ib>ic){ + return b; + }else { + return c; + } + } + }else { + if (ia<ib){ + if (ia<ic){ + return a; + }else { + return c; + } + }else { + if (ib<ic){ + return b; + }else { + return c; + } + } + } + } + + /* + * 鑾峰彇鏈�杩滅珯鐐� + * a:褰撳墠浣嶇疆 + * b:寮�濮嬩綅缃� + * c:缁撴潫浣嶇疆 + * d:閿佸紑濮嬩綅缃� + * */ + public static Integer RouteIndexFarMasNew(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); @@ -324,15 +441,16 @@ case 28: return 116; default: - return 0; + return 1142; } } public static short RgvPosStaTwo(Short posId){ switch (posId.intValue()){ case 1: - case 2: return 116; + case 2: + return 1142; case 3: case 4: return 114; @@ -371,7 +489,7 @@ case 28: return 104; default: - return 0; + return 104; } } -- Gitblit v1.9.1