From 7c077bec6a5912b39262e5aa65c1eba174e10e7a Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期五, 16 二月 2024 21:43:29 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/Utils.java | 70 +++++++++++++++++++++++++++++++++- 1 files changed, 67 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index 1f40a61..2adeca1 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -218,15 +218,36 @@ // System.out.println(deepRow); // } - public static boolean BooleanWhsTypeSta(Integer whsType) { + public static Integer GetWhsType(Integer sourceStaNo) { + switch (sourceStaNo){ + case 104: + case 173: + case 174: + case 175: + case 130: + case 125: + return 5; + default: + return 0; + } + } + + public static boolean BooleanWhsTypeStaIoType(Integer whsType) { if (whsType == 1) { return true; } return false; } + public static boolean BooleanWhsTypeSta(Integer whsType) { + if (whsType == 1 || whsType == 5) { + return true; + } + return false; + } + public static boolean BooleanWhsTypeSta(Integer whsType, Integer staDescId) { - if (whsType == 1 && staDescId != 11 && staDescId != 111) { + if ((whsType == 1 || whsType == 5) && staDescId != 11 && staDescId != 111) { return true; } return false; @@ -252,7 +273,15 @@ public static int[] LocNecessaryParameters(Integer whsType, Integer curRow, Integer crnNumber) { switch (whsType){ case 1://缁忓吀鍙屼几搴撲綅 - return LocNecessaryParametersDoubleExtension(whsType, curRow, crnNumber); + return LocNecessaryParametersDoubleExtension(whsType, curRow, crnNumber); //宸插畬鍠� +// case 2://缁忓吀鍗曚几搴撲綅 +// return LocNecessaryParametersDoubleExtension1(whsType, curRow, crnNumber); //鏈畬鍠� +// case 3://缁忓吀鍗曞弻浼稿簱浣� 宸﹀崟鍙冲弻 +// return LocNecessaryParametersDoubleExtension2(whsType, curRow, crnNumber); //鏈畬鍠� +// case 4://缁忓吀鍗曞弻浼稿簱浣� 宸﹀弻鍙冲崟 +// return LocNecessaryParametersDoubleExtension3(whsType, curRow, crnNumber); //鏈畬鍠� + case 5://鍙屽伐浣嶅崟浼稿簱浣� + return LocNecessaryParametersDoubleExtension5(whsType, curRow, crnNumber); //鏈畬鍠� default: return LocNecessaryParametersMove(whsType, curRow, crnNumber);//moveCrnNo } @@ -309,6 +338,41 @@ return necessaryParameters; } + //鍙屽伐浣嶅崟浼稿簱浣� + public static int[] LocNecessaryParametersDoubleExtension5(Integer whsType, Integer curRow, Integer crnNumber) { + int[] necessaryParameters = new int[]{0, 0, 0, 0}; + if (BooleanWhsTypeSta(whsType)) { + necessaryParameters[0] = crnNumber; // 杞娆℃暟 + //婊℃澘姝e父鍏ュ簱 + if (curRow.equals(crnNumber * 4)) { + necessaryParameters[1] = 1; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = 2; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow.equals(crnNumber * 4 - 3)) { + necessaryParameters[1] = 4; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = 3; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + curRow = curRow + 4; + if (curRow < 1 || curRow > (crnNumber * 4)) { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + if ((curRow - 1) % 4 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow + 3) / 4; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow % 4 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = curRow / 4; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + } + } + return necessaryParameters; + } + public static void main(String[] args) { List<LocMast> locS = new ArrayList<LocMast>(); -- Gitblit v1.9.1