From d1480e6c40cbcaf7e0dd6349153a461a3635bee3 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 19 八月 2024 09:04:39 +0800
Subject: [PATCH] #优化
---
src/main/java/com/zy/asrs/utils/Utils.java | 113 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 106 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index 1149736..1705301 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -488,8 +488,8 @@
add(zerofill(String.valueOf(3), 2) + locNo.substring(2));
}};
case 3:
- return new ArrayList<>();
case 4:
+ return new ArrayList<>();
case 5:
return new ArrayList<String>() {{
add(zerofill(String.valueOf(4), 2) + locNo.substring(2));
@@ -521,8 +521,8 @@
add(zerofill(String.valueOf(11), 2) + locNo.substring(2));
}};
case 11:
- return new ArrayList<>();
case 12:
+ return new ArrayList<>();
case 13:
return new ArrayList<String>() {{
add(zerofill(String.valueOf(12), 2) + locNo.substring(2));
@@ -548,8 +548,8 @@
add(zerofill(String.valueOf(18), 2) + locNo.substring(2));
}};
case 18:
- return new ArrayList<>();
case 19:
+ return new ArrayList<>();
case 20:
return new ArrayList<String>() {{
add(zerofill(String.valueOf(19), 2) + locNo.substring(2));
@@ -868,10 +868,10 @@
return randomCrnNo;
}
- public static void main(String[] args) {
- List<String> groupLoc = Utils.getGroupLoc("1300801");
- System.out.println(groupLoc);
- }
+ //public static void main(String[] args) {
+ // List<String> groupLoc = Utils.getGroupLoc("1300801");
+ // System.out.println(groupLoc);
+ //}
public static Double getIoPri(String locNo){
switch (Utils.getRow(locNo)){
@@ -997,4 +997,103 @@
}
}
+ public static void main(String[] args) {
+ ArrayList<String> locS = new ArrayList<String>();
+ locS.add("1902501");
+ locS.add("2102501");
+ locS.add("1802301");
+ locS.add("1800101");
+ locS.add("0300102");
+ locS.add("0100102");
+ List<String> innermostSideLoc = getInnermostSideLoc(locS, true);
+ System.out.println(innermostSideLoc);
+ }
+
+ public static List<String> getInnermostSideLoc(List<String> locS, boolean pakin){
+ ArrayList<String> listLoc = new ArrayList<>();
+ ArrayList<String> listLocRBL = new ArrayList<>();
+ for (String locNo : locS){
+ if (!listLocRBL.contains(Utils.getInnermostSideLocRBL(locNo, pakin))){
+ listLocRBL.add(Utils.getInnermostSideLocRBL(locNo, pakin));
+ listLoc.add(locNo);
+ }else {
+ for (String loc1 : listLoc){
+ if (Utils.getInnermostSideLocRBL(locNo, pakin).equals(Utils.getInnermostSideLocRBL(loc1, pakin))){
+ if (!pakin){
+ if (Utils.getRow(loc1)>17 && Utils.getRow(locNo)>Utils.getRow(loc1) ){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ }else if ( Utils.getRow(loc1)<18 && Utils.getRow(locNo)<Utils.getRow(loc1)){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ }
+ }else {
+ if ( Utils.getRow(loc1)<4 && Utils.getRow(locNo)>Utils.getRow(loc1)){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ } else if (Utils.getRow(loc1)>3 && Utils.getRow(loc1)<8 && Utils.getRow(locNo)<Utils.getRow(loc1) ){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ } else if (Utils.getRow(loc1)>7 && Utils.getRow(loc1)<12 && Utils.getRow(locNo)>Utils.getRow(loc1) ){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ } else if (Utils.getRow(loc1)>11 && Utils.getRow(loc1)<15 && Utils.getRow(locNo)<Utils.getRow(loc1) ){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ } else if (Utils.getRow(loc1)>14 && Utils.getRow(loc1)<19 && Utils.getRow(locNo)>Utils.getRow(loc1) ){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ } else if ( Utils.getRow(loc1)>18 && Utils.getRow(locNo)<Utils.getRow(loc1)){
+ listLoc.remove(loc1);
+ listLoc.add(locNo);
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ return listLoc;
+ }
+
+ public static String getInnermostSideLocRBL(String locNo, boolean pakin){
+ int row = Utils.getRow(locNo);
+ if (row <= 3) {
+ row = 3;
+ } else if (row <= 7) {
+ row = 4;
+ } else if (row <= 11) {
+ row = 11;
+ } else if (row <= 14) {
+ row = 12;
+ } else if (row <= 18) {
+ row = 18;
+ } else {
+ row = 19;
+ }
+ return ""+row+Utils.getBay(locNo)+Utils.getLev(locNo);
+
+ //if (row <3){
+ // return ""+33+Utils.getBay(locNo)+Utils.getLev(locNo);
+ //}else if (row>30){
+ // return ""+31+Utils.getBay(locNo)+Utils.getLev(locNo);
+ //}
+ //if (row<18 && row>1){
+ // row=1;
+ //}else if (row < 31 && row>17){
+ // row=2;
+ //}
+ //if (pakin){
+ // row=3-row;
+ //}
+ //return ""+row+Utils.getBay(locNo)+Utils.getLev(locNo);
+
+ }
}
--
Gitblit v1.9.1