From 47796e9f5ac45f4d207d03b727de97dbb34a2058 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 06 六月 2023 15:06:52 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/service/CommonService.java | 175 ++++++++-------------------------------------------------- 1 files changed, 24 insertions(+), 151 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 35d495d..cb56388 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -97,37 +97,21 @@ */ @Transactional public StartupDto getLocNo(Integer whsType, Integer staDescId, Integer sourceStaNo, List<String> matNos, LocTypeDto locTypeDto, int times) { -// whsType = getWhsType(sourceStaNo, times); - switch (sourceStaNo){ - case 101: - case 109: - case 117: - whsType=1; //1-8璐ф灦 - slaveProperties.setDoubleDeep(false); - slaveProperties.setGroupCount(2); - break; - case 201: - slaveProperties.setDoubleDeep(true); - slaveProperties.setGroupCount(4); - whsType=2; //9-12璐ф灦 - break; - case 207: - whsType=3; //13-14璐ф灦 - slaveProperties.setDoubleDeep(false); - slaveProperties.setGroupCount(2); - break; - case 213: - slaveProperties.setDoubleDeep(true); - slaveProperties.setGroupCount(4); - whsType=4; //15-18璐ф灦 - break; - default: - throw new CoolException("鏍规嵁鍏ュ簱绔欒幏鍙栧簱浣嶆帓鍙峰垎閰嶅け璐ワ紝鍏ュ簱绔欙細" + sourceStaNo); + + if (sourceStaNo < 200){ + whsType = 1; + } else if (sourceStaNo > 199 && sourceStaNo < 300){ + whsType = 2; + } else if (sourceStaNo > 299){ + whsType = 3; + } + // 鐩爣鍫嗗灈鏈哄彿 + int crnNo = whsType; + if (!basCrnpService.checkSiteError(crnNo, true)){ + throw new CoolException("娌℃湁鍙敤鐨勫爢鍨涙満"); } StartupDto startupDto = new StartupDto(); - - RowLastno rowLastno = rowLastnoService.selectById(whsType); if (Cools.isEmpty(rowLastno)) { @@ -140,8 +124,7 @@ int eRow = rowLastno.geteRow(); int crn_qty = rowLastno.getCrnQty(); int rowCount = eRow - sRow + 1; - // 鐩爣鍫嗗灈鏈哄彿 - int crnNo = 0; + // 鐩爣搴撲綅 LocMast locMast = null; @@ -159,7 +142,6 @@ if (VersionUtils.locMoveCheckLocType(shallowLoc, locTypeDto)) { if (basCrnpService.checkSiteError(shallowLoc.getCrnNo(), true)) { locMast = shallowLoc; - crnNo = locMast.getCrnNo(); break; } } @@ -181,106 +163,18 @@ if (shallowLoc != null && shallowLoc.getLocSts().equals("O")) { if (basCrnpService.checkSiteError(shallowLoc.getCrnNo(), true)) { locMast = shallowLoc; - crnNo = locMast.getCrnNo(); break; } } } } } + + // 濡傛灉娌℃湁鐩歌繎鐗╂枡锛屽垯鎸夎鍒欒疆璇㈣揣鏋� if (null == locMast){ - switch (curRow){ - case 1: - case 3: - case 5: - curRow=curRow+2; - crnNo=(curRow+1)/2; - break; - case 7: - crnNo=1; - curRow=2; - break; - case 13: - crnNo=6; - curRow=14; - break; - case 2: - case 4: - case 6: - curRow=curRow+2; - crnNo=curRow/2; - break; - case 8: - crnNo=1; - curRow=1; - break; - case 14: - crnNo=6; - curRow=13; - break; - case 9: - crnNo=5; - curRow=12; - break; - case 10: - crnNo=5; - curRow=11; - break; - case 11: - crnNo=5; - curRow=9; - break; - case 12: - crnNo=5; - curRow=10; - break; - case 15: - crnNo=7; - curRow=18; - break; - case 16: - crnNo=7; - curRow=17; - break; - case 17: - crnNo=7; - curRow=15; - break; - case 18: - crnNo=7; - curRow=16; - break; - default: - throw new CoolException("鏍规嵁鍏ュ簱绔欒幏鍙栧簱浣嶆帓鍙峰垎閰嶅け璐ワ紝鍏ュ簱绔欙細" + sourceStaNo); - } + curRow = getCurRow(curRow); } -// // 濡傛灉娌℃湁鐩歌繎鐗╂枡锛屽垯鎸夎鍒欒疆璇㈣揣鏋� -// if (null == locMast) { -// Shelves shelves = new Shelves(rowCount, crn_qty); -// int divides = (int) Arith.divides(1, curRow - 1, 4); -// curRow = (int) Arith.remainder(curRow, 4); -// if (curRow == 0) { -// curRow = 4; -// } -// for (int i = 0; i < shelves.group; i ++) { -// curRow = shelves.start(curRow); -// if (curRow < 0) { -// throw new CoolException("妫�绱㈠簱浣嶅け璐ワ紝璇疯仈绯荤鐞嗗憳"); -// } -// Integer crnNo1 = shelves.get(curRow); -// crnNo1 = crnNo1 + divides*1; -// if (basCrnpService.checkSiteError(crnNo1, true)) { -// crnNo = crnNo1; -// curRow = curRow + divides*4; -// break; -// } -// } -// } - - if (crnNo == 0) { - throw new CoolException("娌℃湁鍙敤鐨勫爢鍨涙満"); - } // 鑾峰彇鐩爣绔� Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() .eq("type_no", staDescId) @@ -383,35 +277,14 @@ /** * 鏍规嵁鍏ュ簱绔欒幏鍙栧簱浣嶆帓鍙峰垎閰� */ - private Integer getWhsType(Integer sourceStaNo, int times) { - if (times >= 16) { - return 4; + private Integer getCurRow(Integer curRow) { + if (Utils.isDeepLocLeft(slaveProperties,curRow)){ + curRow=curRow+3; + }else if (Utils.isDeepLocLeft(slaveProperties,curRow-1)){ + curRow=curRow+1; + }else { + curRow=curRow-2; } - switch (sourceStaNo) { - case 173: - case 176: - case 180: - case 185: - return 1; - case 189: - case 194: - case 198: - case 202: - return 2; - case 206: -// case 211: -// case 215: -// case 219: -// case 223: - case 227: - return 3; - case 305: - case 303: - case 301: - return 4; - default: - throw new CoolException("鏍规嵁鍏ュ簱绔欒幏鍙栧簱浣嶆帓鍙峰垎閰嶅け璐ワ紝鍏ュ簱绔欙細" + sourceStaNo); - } + return curRow; } - } -- Gitblit v1.9.1