From dca272efbaf315859decfcd339b39f9f647fffad Mon Sep 17 00:00:00 2001 From: LSH Date: 星期一, 27 三月 2023 10:17:21 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/Utils.java | 121 +++++++++++++++++++++++++++------------- 1 files changed, 81 insertions(+), 40 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index 1de3954..9fd11fb 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -199,6 +199,27 @@ } + public static Integer getInnermostRow(String locNo){ + int row = getRow(locNo); + switch (row) { + case 1: + case 2: + case 3: + case 4: + return 1; + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + return 11; + default: + throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); + } + } + public static List<Integer> getGroupLoc(Integer row){ if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) { return CommonService.FIRST_GROUP_ROW_LIST; @@ -214,35 +235,6 @@ int row = getRow(locNo); List<String> result = new ArrayList<>(); if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) { - for (Integer integer : CommonService.FIRST_GROUP_ROW_LIST) { - if (integer < row) { - result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); - } else { - break; - } - } - } else if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)) { - List<Integer> clone = Arrays.asList(new Integer[CommonService.SECOND_GROUP_ROW_LIST.size()]); - Collections.copy(clone, CommonService.SECOND_GROUP_ROW_LIST); - Collections.reverse(clone); - for (Integer integer : clone) { - if (integer > row) { - result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); - } else { - break; - } - } - } else { -// throw new RuntimeException("搴撲綅瑙f瀽寮傚父"); - } - return result; - } - - // 鍐呬晶鏂瑰悜鐨勮揣浣� 浼樺厛鍏ュ簱鏂瑰悜/浼樺厛鍑哄簱鏂瑰悜 ===>> 鍙嶄箣 - public static List<String> getGroupInsideLoc(String locNo){ - int row = getRow(locNo); - List<String> result = new ArrayList<>(); - if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) { List<Integer> clone = Arrays.asList(new Integer[CommonService.FIRST_GROUP_ROW_LIST.size()]); Collections.copy(clone, CommonService.FIRST_GROUP_ROW_LIST); Collections.reverse(clone); @@ -253,8 +245,61 @@ break; } } - } else if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)) { - for (Integer integer : CommonService.SECOND_GROUP_ROW_LIST) { + } else if (CommonService.FIRST_GROUP_ROW_LIST_SHORT.contains(row)){ + List<Integer> clone = Arrays.asList(new Integer[CommonService.FIRST_GROUP_ROW_LIST_SHORT.size()]); + Collections.copy(clone, CommonService.FIRST_GROUP_ROW_LIST_SHORT); + Collections.reverse(clone); + for (Integer integer : clone) { + if (integer > row) { + result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); + } else { + break; + } + } + } else if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)){ + List<Integer> clone = Arrays.asList(new Integer[CommonService.SECOND_GROUP_ROW_LIST.size()]); + Collections.copy(clone, CommonService.SECOND_GROUP_ROW_LIST); + Collections.reverse(clone); + for (Integer integer : clone) { + if (integer > row) { + result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); + } else { + break; + } + } + } else if (CommonService.THIRD_GROUP_ROW_LIST.contains(row)){ + for (Integer integer : CommonService.THIRD_GROUP_ROW_LIST) { + if (integer < row) { + result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); + } else { + break; + } + } + } + return result; + } + + public static void main(String[] args) { + System.out.println(JSON.toJSONString(getGroupOuterLoc("0200101"))); + } + + // 鍐呬晶鏂瑰悜鐨勮揣浣� 浼樺厛鍏ュ簱鏂瑰悜/浼樺厛鍑哄簱鏂瑰悜 ===>> 鍙嶄箣 + public static List<String> getGroupInsideLoc(String locNo){ + int row = getRow(locNo); + List<String> result = new ArrayList<>(); + if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)) { + List<Integer> clone = Arrays.asList(new Integer[CommonService.SECOND_GROUP_ROW_LIST.size()]); + Collections.copy(clone, CommonService.SECOND_GROUP_ROW_LIST); + Collections.reverse(clone); + for (Integer integer : clone) { + if (integer > row) { + result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); + } else { + break; + } + } + } else if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) { + for (Integer integer : CommonService.FIRST_GROUP_ROW_LIST) { if (integer < row) { result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); } else { @@ -274,17 +319,17 @@ public static List<String> getGroupOutsideLoc(String locNo){ int row = getRow(locNo); List<String> result = new ArrayList<>(); - if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) { - for (Integer integer : CommonService.FIRST_GROUP_ROW_LIST) { + if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)) { + for (Integer integer : CommonService.SECOND_GROUP_ROW_LIST) { if (integer < row) { result.add(zerofill(String.valueOf(integer), 2) + locNo.substring(2)); } else { break; } } - } else if (CommonService.SECOND_GROUP_ROW_LIST.contains(row)) { - List<Integer> clone = Arrays.asList(new Integer[CommonService.SECOND_GROUP_ROW_LIST.size()]); - Collections.copy(clone, CommonService.SECOND_GROUP_ROW_LIST); + } else if (CommonService.FIRST_GROUP_ROW_LIST.contains(row)) { + List<Integer> clone = Arrays.asList(new Integer[CommonService.FIRST_GROUP_ROW_LIST.size()]); + Collections.copy(clone, CommonService.FIRST_GROUP_ROW_LIST); Collections.reverse(clone); for (Integer integer : clone) { if (integer > row) { @@ -300,10 +345,6 @@ Collections.reverse(result); } return result; - } - - public static void main(String[] args) { - System.out.println(JSON.toJSONString(getGroupOuterLoc("0500201"))); } } -- Gitblit v1.9.1