From d964498a12a672139ad25ec774faa054059fa736 Mon Sep 17 00:00:00 2001 From: lty <876263681@qq.com> Date: 星期三, 23 四月 2025 09:45:22 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/Utils.java | 313 ++++++++++++++++++++++++++-------------------------- 1 files changed, 157 insertions(+), 156 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index 34b1dc7..69af95a 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -229,10 +229,10 @@ public static Integer GetWhsType(Integer sourceStaNo) { RowLastnoService rowLastnoService = SpringUtils.getBean(RowLastnoService.class); List<RowLastno> rowLastnos = rowLastnoService.selectList(new EntityWrapper<RowLastno>()); - for (RowLastno rowLastno:rowLastnos){ + for (RowLastno rowLastno : rowLastnos) { String[] staNoList = rowLastno.getStaNoList().split(";"); - for (String staNo : staNoList){ - if (staNo.equals(sourceStaNo.toString())){ + for (String staNo : staNoList) { + if (staNo.equals(sourceStaNo.toString())) { return rowLastno.getWhsType(); } } @@ -240,22 +240,15 @@ return 0; } - public static boolean BooleanWhsTypeStaIoType(Integer whsType) { //鏌ヨ鐩镐技鐗╂枡寮�鍏� - if (whsType == 1 || whsType==3 || whsType==4) { + public static boolean BooleanWhsTypeStaIoType(RowLastno rowLastno) { //鏌ヨ鐩镐技鐗╂枡寮�鍏� + if (rowLastno.getBeSimilar().equals("Y")) { return true; } return false; } - public static boolean BooleanWhsTypeSta(Integer whsType) { - if (whsType == 1 || whsType == 2 || whsType == 5 || whsType==3 || whsType==4) { - return true; - } - return false; - } - - public static boolean BooleanWhsTypeSta(Integer whsType, Integer staDescId) { - if ((whsType == 1 || whsType == 5 || whsType == 2 || whsType==3 || whsType==4) && staDescId != 11 && staDescId != 111) { + public static boolean BooleanWhsTypeSta(RowLastno rowLastno, Integer staDescId) {//绔欑偣璺緞鏇存柊 + if (rowLastno.getPointSwitch().equals("Y") && staDescId != 11 && staDescId != 111) { return true; } return false; @@ -281,7 +274,7 @@ public static int[] LocNecessaryParameters(Integer whsType, Integer curRow, Integer crnNumber) { RowLastnoService rowLastnoService = SpringUtils.getBean(RowLastnoService.class); RowLastno rowLastno = rowLastnoService.selectById(whsType); - switch (whsType){ + switch (rowLastno.getTypeId()) { case 1://缁忓吀鍙屼几搴撲綅 return LocNecessaryParametersDoubleExtension(rowLastno, curRow, crnNumber); //宸插畬鍠� case 2://缁忓吀鍗曚几搴撲綅锛�2鎺掕揣鏋讹級 @@ -303,35 +296,34 @@ Integer sRow = rowLastno.getsRow(); Integer sCrnNo = rowLastno.getsCrnNo(); - if (BooleanWhsTypeSta(rowLastno.getWhsType())) { - necessaryParameters[0] = crnNumber; // 杞娆℃暟 - //婊℃澘姝e父鍏ュ簱 - if (curRow.equals(crnNumber * 4 + sRow - 1)) { - necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+1; //nearRow 鏈�娴呭簱浣嶆帓 - } else if (curRow.equals((crnNumber - 1) * 4 + sRow)) { - necessaryParameters[1] = sRow+3; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+2; //nearRow 鏈�娴呭簱浣嶆帓 + necessaryParameters[0] = crnNumber; // 杞娆℃暟 + //婊℃澘姝e父鍏ュ簱 + if (curRow.equals(crnNumber * 4 + sRow - 1)) { + necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow.equals((crnNumber - 1) * 4 + sRow)) { + necessaryParameters[1] = sRow + 3; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 2; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + curRow = curRow + 4; + if (curRow < sRow || curRow > (crnNumber * 4 + sRow - 1)) { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + if ((curRow - sRow) % 4 == 0) {//1\5\9\13 + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow + 3) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if ((curRow - sRow + 1) % 4 == 0) {//4\8\12\16 + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow + 1) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 } else { - curRow = curRow + 4; - if (curRow < sRow || curRow > (crnNumber * 4 + sRow - 1)) { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } - if ((curRow - sRow) % 4 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow + 2) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 - } else if ((curRow - sRow + 1) % 4 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow + 1) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 - } else { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); } } + return necessaryParameters; } @@ -339,14 +331,14 @@ public static int[] LocNecessaryParametersMove(RowLastno rowLastno, Integer curRow, Integer moveCrnNo) { int[] necessaryParameters = new int[]{0, 0, 0, 0}; necessaryParameters[0] = 2; // 杞娆℃暟 - if (curRow.equals(moveCrnNo*4-2)){ - necessaryParameters[1] = curRow+2; //curRow 鏈�娣卞簱浣嶆帓 + if (curRow.equals(moveCrnNo * 4 - 2)) { + necessaryParameters[1] = curRow + 2; //curRow 鏈�娣卞簱浣嶆帓 necessaryParameters[2] = moveCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow+1; //nearRow 鏈�娴呭簱浣嶆帓 - }else { - necessaryParameters[1] = curRow-2; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + necessaryParameters[1] = curRow - 2; //curRow 鏈�娣卞簱浣嶆帓 necessaryParameters[2] = moveCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow-1; //nearRow 鏈�娴呭簱浣嶆帓 + necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 } return necessaryParameters; } @@ -356,33 +348,31 @@ int[] necessaryParameters = new int[]{0, 0, 0, 0}; Integer sRow = rowLastno.getsRow(); Integer sCrnNo = rowLastno.getsCrnNo(); - if (BooleanWhsTypeSta(rowLastno.getWhsType())) { - necessaryParameters[0] = crnNumber; // 杞娆℃暟 - //婊℃澘姝e父鍏ュ簱 - if (curRow.equals(crnNumber * 2 + sRow - 1)) { - necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow; //nearRow 鏈�娴呭簱浣嶆帓 - } else if (curRow.equals((crnNumber - 1) * 2 + sRow)) { - necessaryParameters[1] = sRow+1; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+1; //nearRow 鏈�娴呭簱浣嶆帓 + necessaryParameters[0] = crnNumber; // 杞娆℃暟 + //婊℃澘姝e父鍏ュ簱 + if (curRow.equals(crnNumber * 2 + sRow - 1)) { + necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow.equals((crnNumber - 1) * 2 + sRow)) { + necessaryParameters[1] = sRow + 1; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + curRow = curRow + 2; + if (curRow < sRow || curRow > (crnNumber * 2 + sRow - 1)) { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + if ((curRow - sRow) % 2 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow) / 2 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow; //nearRow 鏈�娴呭簱浣嶆帓 + } else if ((curRow - sRow + 1) % 2 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow - 1) / 2 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow; //nearRow 鏈�娴呭簱浣嶆帓 } else { - curRow = curRow + 2; - if (curRow < sRow || curRow > (crnNumber * 2 + sRow - 1)) { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } - if ((curRow - sRow) % 2 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow) / 2 + sCrnNo ; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow ; //nearRow 鏈�娴呭簱浣嶆帓 - } else if ((curRow - sRow + 1) % 2 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow - 1) / 2 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow ; //nearRow 鏈�娴呭簱浣嶆帓 - } else { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); } } return necessaryParameters; @@ -393,35 +383,34 @@ int[] necessaryParameters = new int[]{0, 0, 0, 0}; Integer sRow = rowLastno.getsRow(); Integer sCrnNo = rowLastno.getsCrnNo(); - if (BooleanWhsTypeSta(rowLastno.getWhsType())) { - necessaryParameters[0] = crnNumber; // 杞娆℃暟 - //婊℃澘姝e父鍏ュ簱 - if (curRow.equals(crnNumber * 3 + sRow - 1)) { - necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow; //nearRow 鏈�娴呭簱浣嶆帓 - } else if (curRow.equals((crnNumber - 1) * 3 + sRow)) { - necessaryParameters[1] = sRow+2; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+1; //nearRow 鏈�娴呭簱浣嶆帓 + necessaryParameters[0] = crnNumber; // 杞娆℃暟 + //婊℃澘姝e父鍏ュ簱 + if (curRow.equals(crnNumber * 3 + sRow - 1)) { + necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow.equals((crnNumber - 1) * 3 + sRow)) { + necessaryParameters[1] = sRow + 2; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + curRow = curRow + 3; + if (curRow < sRow || curRow > (crnNumber * 3 + sRow - 1)) { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + if ((curRow - sRow) % 3 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow) / 3 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow; //nearRow 鏈�娴呭簱浣嶆帓 + } else if ((curRow - sRow + 1) % 3 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow - 2) / 3 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 } else { - curRow = curRow + 3; - if (curRow < sRow || curRow > (crnNumber * 3 + sRow - 1)) { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } - if ((curRow - sRow) % 3 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow) / 3 + sCrnNo ; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow ; //nearRow 鏈�娴呭簱浣嶆帓 - } else if ((curRow - sRow + 1) % 3 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow - 2) / 3 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow-1 ; //nearRow 鏈�娴呭簱浣嶆帓 - } else { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); } } + return necessaryParameters; } @@ -430,35 +419,34 @@ int[] necessaryParameters = new int[]{0, 0, 0, 0}; Integer sRow = rowLastno.getsRow(); Integer sCrnNo = rowLastno.getsCrnNo(); - if (BooleanWhsTypeSta(rowLastno.getWhsType())) { - necessaryParameters[0] = crnNumber; // 杞娆℃暟 - //婊℃澘姝e父鍏ュ簱 - if (curRow.equals(crnNumber * 3 + sRow - 1)) { - necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+1; //nearRow 鏈�娴呭簱浣嶆帓 - } else if (curRow.equals((crnNumber - 1) * 3 + sRow)) { - necessaryParameters[1] = sRow+2; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+2; //nearRow 鏈�娴呭簱浣嶆帓 + necessaryParameters[0] = crnNumber; // 杞娆℃暟 + //婊℃澘姝e父鍏ュ簱 + if (curRow.equals(crnNumber * 3 + sRow - 1)) { + necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow.equals((crnNumber - 1) * 3 + sRow)) { + necessaryParameters[1] = sRow + 2; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 2; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + curRow = curRow + 3; + if (curRow < sRow || curRow > (crnNumber * 3 + sRow - 1)) { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + if ((curRow - sRow) % 3 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow) / 3 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if ((curRow - sRow + 1) % 3 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow - 2) / 3 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow; //nearRow 鏈�娴呭簱浣嶆帓 } else { - curRow = curRow + 3; - if (curRow < sRow || curRow > (crnNumber * 3 + sRow - 1)) { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } - if ((curRow - sRow) % 3 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow) / 3 + sCrnNo ; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow + 1 ; //nearRow 鏈�娴呭簱浣嶆帓 - } else if ((curRow - sRow + 1) % 3 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow - 2) / 3 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow ; //nearRow 鏈�娴呭簱浣嶆帓 - } else { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); } } + return necessaryParameters; } @@ -467,35 +455,34 @@ int[] necessaryParameters = new int[]{0, 0, 0, 0}; Integer sRow = rowLastno.getsRow(); Integer sCrnNo = rowLastno.getsCrnNo(); - if (BooleanWhsTypeSta(rowLastno.getWhsType())) { - necessaryParameters[0] = crnNumber; // 杞娆℃暟 - //婊℃澘姝e父鍏ュ簱 - if (curRow.equals(crnNumber * 4 + sRow - 1)) { - necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+1; //nearRow 鏈�娴呭簱浣嶆帓 - } else if (curRow.equals((crnNumber - 1) * 4 + sRow)) { - necessaryParameters[1] = sRow+3; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = sRow+2; //nearRow 鏈�娴呭簱浣嶆帓 + necessaryParameters[0] = crnNumber; // 杞娆℃暟 + //婊℃澘姝e父鍏ュ簱 + if (curRow.equals(crnNumber * 4 + sRow - 1)) { + necessaryParameters[1] = sRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if (curRow.equals((crnNumber - 1) * 4 + sRow)) { + necessaryParameters[1] = sRow + 3; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = sRow + 2; //nearRow 鏈�娴呭簱浣嶆帓 + } else { + curRow = curRow + 4; + if (curRow < sRow || curRow > (crnNumber * 4 + sRow - 1)) { + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); + } + if ((curRow - sRow) % 4 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow + 2) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 + } else if ((curRow - sRow + 1) % 4 == 0) { + necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = (curRow - sRow + 1) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 } else { - curRow = curRow + 4; - if (curRow < sRow || curRow > (crnNumber * 4 + sRow - 1)) { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } - if ((curRow - sRow) % 4 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow + 2) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow + 1; //nearRow 鏈�娴呭簱浣嶆帓 - } else if ((curRow - sRow + 1) % 4 == 0) { - necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow + 1) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 - } else { - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); - } + throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); } } + return necessaryParameters; } @@ -559,18 +546,32 @@ * 鍑哄簱 false:pakin * */ // 澶栦晶鏂瑰悜鐨勮揣浣� 浼樺厛鍏ュ簱鏂瑰悜 ===>> 鍙嶄箣 - public static List<String> getGroupOutLocCrn(Integer curRow,Integer nearRow,String locNo,boolean pakin){ + public static List<String> getGroupOutLocCrn(Integer curRow, Integer nearRow, String locNo, boolean pakin) { List<String> result = new ArrayList<>(); - if (pakin){ - for (int row = curRow;row<=nearRow;row++){ + if (pakin) { + for (int row = curRow; row <= nearRow; row++) { result.add(zerofill(String.valueOf(row), 2) + locNo.substring(2)); } - }else { - for (int row = curRow;row>=curRow;row--){ + } else { + for (int row = curRow; row >= curRow; row--) { result.add(zerofill(String.valueOf(row), 2) + locNo.substring(2)); } } return result; } + // 澶栦晶鏂瑰悜鐨勮揣浣� 浼樺厛鍏ュ簱鏂瑰悜/浼樺厛鍑哄簱鏂瑰悜 ===>> 鍙嶄箣 + public static List<String> getGroupOutsideLocCrn(String locNo){ + int row = getRow(locNo); + List<String> result = new ArrayList<>(); + if (row==3 || row == 4){ + result.add(zerofill(String.valueOf(3), 2) + locNo.substring(2)); + result.add(zerofill(String.valueOf(4), 2) + locNo.substring(2)); + return result; + }else{ + result.add(locNo); + return result; + } + } + } -- Gitblit v1.9.1