| | |
| | | public class RouteUtils { |
| | | |
| | | public static final List<Integer> MERGE_STA_NO_One = new ArrayList<Integer>() {{ |
| | | add(116);add(117); |
| | | add(171);add(116);add(117); |
| | | }}; |
| | | |
| | | public static final List<Integer> MERGE_STA_NO_TWO = new ArrayList<Integer>() {{ |
| | |
| | | }}; |
| | | |
| | | 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_NINE = new ArrayList<Integer>() {{ |
| | | // add(108);add(119);add(110);add(120); |
| | | |
| | | }}; |
| | | |
| | | // 正序 |
| | | public static final List<Integer> TRACK_POSITION_POSITIVE_SEQUENCE1 = new ArrayList<Integer>() {{ |
| | | add(101);add(102);add(104);add(122);add(105);add(107);add(118);add(108); |
| | | }}; |
| | | // 反序 |
| | | public static final List<Integer> TRACK_POSITION_REVERSE_SEQUENCE2 = new ArrayList<Integer>() {{ |
| | | add(117);add(116);add(171);add(1142);add(114);add(123);add(113);add(121);add(111);add(120);add(110); |
| | | }}; |
| | | |
| | | public static Integer getEndRoute(Integer endRoute,Integer rgvNo){ |
| | | if (rgvNo == 1){ |
| | | if (TRACK_POSITION_POSITIVE_SEQUENCE1.contains(endRoute)){ |
| | | return endRoute; |
| | | } else { |
| | | return 108; |
| | | } |
| | | } else if (rgvNo == 2){ |
| | | if (TRACK_POSITION_REVERSE_SEQUENCE2.contains(endRoute)){ |
| | | return endRoute; |
| | | } else { |
| | | return 110; |
| | | } |
| | | } |
| | | return endRoute; |
| | | } |
| | | |
| | | // 正序 |
| | | public static final List<Integer> TRACK_POSITION_POSITIVE_SEQUENCE = new ArrayList<Integer>() {{ |
| | | add(101);add(102);add(104);add(122);add(105);add(107);add(118);add(108);add(119);add(110);add(120);add(111);add(121);add(113);add(123);add(114);add(1142);add(116);add(117); |
| | | add(101);add(102);add(104);add(122);add(105);add(107);add(118);add(108);add(119);add(110);add(120);add(111);add(121);add(113);add(123);add(114);add(1142);add(171);add(116);add(117); |
| | | }}; |
| | | // 反序 |
| | | public static final List<Integer> TRACK_POSITION_REVERSE_SEQUENCE = new ArrayList<Integer>() {{ |
| | | 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); |
| | | add(117);add(116);add(171);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){ |
| | |
| | | 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 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; |
| | | switch (staNo){ |
| | | case 101: |
| | | case 102: return 102; |
| | | case 104: |
| | | case 122: return 118; |
| | | case 105: return 119; |
| | | case 107: |
| | | case 118: return 108; |
| | | 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: |
| | | case 171: |
| | | return 1142; |
| | | case 1142: |
| | | case 114: return 113; |
| | | case 123: |
| | | case 113: return 111; |
| | | case 121: return 110; |
| | | case 111: return 110; |
| | | case 120: |
| | | case 110: return 108; |
| | | 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); |
| | | } |
| | | |
| | | /* |
| | | * 获取干涉最远站点 |
| | | * */ |
| | | public static Integer RouteIndexFarMasL(int rgvNo,Integer staNo){ |
| | | if (rgvNo==1){ |
| | | switch (staNo){ |
| | | case 101: |
| | | case 102: |
| | | case 104: |
| | | case 122: |
| | | case 105: |
| | | case 107: |
| | | return 118; |
| | | case 118: |
| | | return staNo; |
| | | default: |
| | | return 108; |
| | | } |
| | | }else { |
| | | switch (staNo){ |
| | | case 117: |
| | | case 116: |
| | | case 171: |
| | | case 1142: |
| | | case 114: |
| | | case 123: |
| | | case 113: |
| | | case 121: |
| | | return 121; |
| | | case 111: |
| | | return staNo; |
| | | default: |
| | | return 110; |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 获取当前小车未行走的路线集合 |
| | | public static List<Integer> getRoute(Integer groupStart,Integer groupEnd){ |
| | |
| | | return 105; |
| | | case 7: |
| | | case 8: |
| | | return 118; |
| | | case 9: |
| | | return 118; |
| | | case 10: |
| | | case 11: |
| | | return 119; |
| | |
| | | case 14: |
| | | return 120; |
| | | case 15: |
| | | return 110; |
| | | case 16: |
| | | return 110; |
| | | case 17: |
| | | case 18: |
| | | return 119; |