From 6a9b23334a99483ffdab9bbcf3a29eb830b3d77a Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 26 五月 2023 08:46:02 +0800
Subject: [PATCH] 库位地图
---
src/main/java/com/zy/asrs/utils/Utils.java | 176 ++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 133 insertions(+), 43 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index 04516e3..e75e2a8 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -6,7 +6,9 @@
import java.text.DecimalFormat;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
/**
* Created by vincent on 2020/8/27
@@ -34,6 +36,13 @@
}
return msgBuilder.toString();
}
+ }
+
+ /**
+ * 閫氳繃鎺掑垪灞傛嫾鎺ュ嚭搴撲綅鍙�
+ */
+ public static String append(int row, int bay, int lev) {
+ return zerofill(String.valueOf(row), 2) + zerofill(String.valueOf(bay), 3) + zerofill(String.valueOf(lev), 2);
}
/**
@@ -144,6 +153,26 @@
}
/**
+ * 閫氳繃搴撲綅鍙疯幏鍙� 鍒�
+ */
+ public static int getBay(String locNo) {
+ if (!Cools.isEmpty(locNo)) {
+ return Integer.parseInt(locNo.substring(2, 5));
+ }
+ throw new RuntimeException("搴撲綅瑙f瀽寮傚父");
+ }
+
+ /**
+ * 閫氳繃搴撲綅鍙疯幏鍙� 灞�
+ */
+ public static int getLev(String locNo) {
+ if (!Cools.isEmpty(locNo)) {
+ return Integer.parseInt(locNo.substring(5, 7));
+ }
+ throw new RuntimeException("搴撲綅瑙f瀽寮傚父");
+ }
+
+ /**
* 褰撴绱㈠埌鍙屾繁搴撲綅鐨勬祬搴撲綅鏃讹紝濡傛灉娣卞簱浣嶆棤璐э紝鍒欐斁鍏ュ搴旂殑娣卞簱浣�
*/
public static void toDeepIfEmptyByShallow(String shallowLoc) {
@@ -195,42 +224,6 @@
throw new RuntimeException("搴撲綅瑙f瀽寮傚父");
}
}
-
- public static Integer getInnermostRow(String locNo){
- int row = getRow(locNo);
- switch (row) {
- case 1:
- case 2:
- case 3:
- return 1;
- case 4:
- case 5:
- case 6:
- case 7:
- return 7;
- case 8:
- case 9:
- case 10:
- case 11:
- return 8;
- case 12:
- case 13:
- case 14:
- return 14;
- case 15:
- case 16:
- case 17:
- case 18:
- return 15;
- case 19:
- case 20:
- case 21:
- return 21;
- default:
- throw new RuntimeException("搴撲綅瑙f瀽寮傚父");
- }
- }
-
public static List<String> getGroupLoc(String locNo){
int row = getRow(locNo);
@@ -355,13 +348,14 @@
}
}
+ // 娉ㄦ剰椤哄簭
public static List<String> getGroupOuterLoc(String locNo){
int row = getRow(locNo);
switch (row) {
case 1:
return new ArrayList<String>() {{
- add(zerofill(String.valueOf(2), 2) + locNo.substring(2));
add(zerofill(String.valueOf(3), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(2), 2) + locNo.substring(2));
}};
case 2:
return new ArrayList<String>() {{
@@ -391,14 +385,14 @@
}};
case 8:
return new ArrayList<String>() {{
- add(zerofill(String.valueOf(9), 2) + locNo.substring(2));
- add(zerofill(String.valueOf(10), 2) + locNo.substring(2));
add(zerofill(String.valueOf(11), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(10), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(9), 2) + locNo.substring(2));
}};
case 9:
return new ArrayList<String>() {{
- add(zerofill(String.valueOf(10), 2) + locNo.substring(2));
add(zerofill(String.valueOf(11), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(10), 2) + locNo.substring(2));
}};
case 10:
return new ArrayList<String>() {{
@@ -415,14 +409,14 @@
}};
case 15:
return new ArrayList<String>() {{
- add(zerofill(String.valueOf(16), 2) + locNo.substring(2));
- add(zerofill(String.valueOf(17), 2) + locNo.substring(2));
add(zerofill(String.valueOf(18), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(17), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(16), 2) + locNo.substring(2));
}};
case 16:
return new ArrayList<String>() {{
- add(zerofill(String.valueOf(17), 2) + locNo.substring(2));
add(zerofill(String.valueOf(18), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(17), 2) + locNo.substring(2));
}};
case 17:
return new ArrayList<String>() {{
@@ -442,4 +436,100 @@
}
}
+ // 娉ㄦ剰椤哄簭
+ public static List<String> getGroupInsideLoc(String locNo){
+ int row = getRow(locNo);
+ switch (row) {
+ case 1:
+ case 21:
+ case 14:
+ case 15:
+ case 7:
+ case 8:
+ return new ArrayList<>();
+ case 2:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(1), 2) + locNo.substring(2));
+ }};
+ case 3:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(1), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(2), 2) + locNo.substring(2));
+ }};
+ case 4:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(7), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(6), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(5), 2) + locNo.substring(2));
+ }};
+ case 5:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(7), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(6), 2) + locNo.substring(2));
+ }};
+ case 6:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(7), 2) + locNo.substring(2));
+ }};
+ case 9:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(8), 2) + locNo.substring(2));
+ }};
+ case 10:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(8), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(9), 2) + locNo.substring(2));
+ }};
+ case 11:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(8), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(9), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(10), 2) + locNo.substring(2));
+ }};
+ case 12:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(14), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(13), 2) + locNo.substring(2));
+ }};
+ case 13:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(14), 2) + locNo.substring(2));
+ }};
+ case 16:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(15), 2) + locNo.substring(2));
+ }};
+ case 17:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(15), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(16), 2) + locNo.substring(2));
+ }};
+ case 18:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(15), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(16), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(17), 2) + locNo.substring(2));
+ }};
+ case 19:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(21), 2) + locNo.substring(2));
+ add(zerofill(String.valueOf(20), 2) + locNo.substring(2));
+ }};
+ case 20:
+ return new ArrayList<String>() {{
+ add(zerofill(String.valueOf(21), 2) + locNo.substring(2));
+ }};
+ default:
+ throw new RuntimeException("搴撲綅瑙f瀽寮傚父");
+ }
+ }
+
+ public Map<Integer, List<Integer>> getRowSeqHasSortOfPakin(int start, int end) {
+ Map<Integer, List<Integer>> result = new HashMap<>();
+ for (int i = start ; i <= end; i++) {
+
+ }
+ return result;
+ }
+
}
--
Gitblit v1.9.1