From 4e7b572dc768036bc8ebfe7b6e149223f6a15b9d Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期五, 27 六月 2025 10:34:23 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/Utils.java | 61 +++++++++--------------------- 1 files changed, 18 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 4ead5ce..f85a48b 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -123,17 +123,9 @@ */ public static String getShallowLoc(SlaveProperties slaveProperties, String deepLoc) { int row = getRow(deepLoc); - int remainder = (int) Arith.remainder(row, slaveProperties.getGroupCount()); - int shallowRow = remainder == 1 ? (row + 1) : (row - 1); + boolean deepLocLeft = isDeepLocLeft(slaveProperties, row);//鍒ゆ柇鏄惁涓哄乏娣卞簱浣� + int shallowRow = deepLocLeft? (row + 1) : (row - 1); return zerofill(String.valueOf(shallowRow), 2) + deepLoc.substring(2); - } - - /** - * 鑾峰彇 娣卞簱浣嶆帓瀵瑰簲鐨勬祬搴撲綅鎺� - */ - public static Integer getShallowRow(SlaveProperties slaveProperties, Integer deepRow) { - int remainder = (int) Arith.remainder(deepRow, slaveProperties.getGroupCount()); - return remainder == 1 ? (deepRow + 1) : (deepRow - 1); } /** @@ -141,32 +133,26 @@ */ public static String getDeepLoc(SlaveProperties slaveProperties, String shallowLoc) { int row = getRow(shallowLoc); - int remainder = (int) Arith.remainder(row, slaveProperties.getGroupCount()); - int targetRow; - if (remainder == 2) { - targetRow = row - 1; - } else if (remainder == 3) { - targetRow = row + 1; - } else { - throw new RuntimeException(shallowLoc + "涓嶆槸娴呭簱浣嶏紝绯荤粺绻佸繖"); - } - return zerofill(String.valueOf(targetRow), 2) + shallowLoc.substring(2); + boolean deepLocLeft = isDeepLocLeft(slaveProperties, row-1);//鍒ゆ柇鏄惁涓哄乏娴呭簱浣� + int shallowRow = deepLocLeft? (row - 1) : (row + 1); + return zerofill(String.valueOf(shallowRow), 2) + shallowLoc.substring(2); + } + + /** + * 鑾峰彇 娣卞簱浣嶆帓瀵瑰簲鐨勬祬搴撲綅鎺� + */ + public static Integer getShallowRow(SlaveProperties slaveProperties, Integer deepRow) { +// int remainder = (int) Arith.remainder(deepRow, slaveProperties.getGroupCount()); + boolean deepLocLeft = isDeepLocLeft(slaveProperties, deepRow);//鍒ゆ柇鏄惁涓哄乏娣卞簱浣� + return deepLocLeft ? (deepRow + 1) : (deepRow - 1); } /** * 鑾峰彇 娴呭簱浣嶆帓瀵瑰簲鐨勬繁搴撲綅鎺� */ public static Integer getDeepRow(SlaveProperties slaveProperties, Integer shallowRow) { - int remainder = (int) Arith.remainder(shallowRow, slaveProperties.getGroupCount()); - int targetRow; - if (remainder == 2) { - targetRow = shallowRow - 1; - } else if (remainder == 3) { - targetRow = shallowRow + 1; - } else { - throw new RuntimeException(shallowRow + "涓嶆槸娴呭簱浣嶆帓锛岀郴缁熺箒蹇�"); - } - return targetRow; + boolean deepLocLeft = isDeepLocLeft(slaveProperties, shallowRow-1);//鍒ゆ柇鏄惁涓哄乏娴呭簱浣� + return deepLocLeft? (shallowRow - 1) : (shallowRow + 1); } /** @@ -216,17 +202,6 @@ String targetLoc = zerofill(String.valueOf(targetRow), 2) + shallowLoc.substring(2); } - -// public static void main(String[] args) { -// SlaveProperties slaveProperties = new SlaveProperties(); -// slaveProperties.setDoubleDeep(true); -// List<Integer> list = new ArrayList<>(); -// list.add(1);list.add(4);list.add(5);list.add(8);list.add(9);list.add(12); -// slaveProperties.setDoubleLocs(list); -// slaveProperties.setGroupCount(4); -// Integer deepRow = getDeepRow(slaveProperties, 6); -// System.out.println(deepRow); -// } public static Integer GetWhsType(Integer sourceStaNo) { RowLastnoService rowLastnoService = SpringUtils.getBean(RowLastnoService.class); @@ -317,11 +292,11 @@ } if ((curRow - sRow) % 4 == 0) { necessaryParameters[1] = curRow; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = (curRow - sRow + 2) / 4 + sCrnNo - 1; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[2] = (curRow - sRow) / 4 + sCrnNo; //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[2] = (curRow - sRow - 3) / 4 + sCrnNo; //crnNo 鍫嗗灈鏈哄彿 necessaryParameters[3] = curRow - 1; //nearRow 鏈�娴呭簱浣嶆帓 } else { throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細" + curRow); -- Gitblit v1.9.1