From 511e1c1754b21d14be1ef1ef5bec8e6453ef32b2 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期四, 20 六月 2024 15:01:52 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java | 4 +- src/main/java/com/zy/asrs/utils/Utils.java | 26 ++++++------ src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 3 + src/main/java/com/zy/asrs/controller/WorkController.java | 7 +++ src/main/java/com/zy/common/service/CommonService.java | 26 ++++++++++-- 5 files changed, 45 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/WorkController.java b/src/main/java/com/zy/asrs/controller/WorkController.java index 8b6a223..0d8a021 100644 --- a/src/main/java/com/zy/asrs/controller/WorkController.java +++ b/src/main/java/com/zy/asrs/controller/WorkController.java @@ -83,7 +83,12 @@ @RequestMapping("/full/store/put/start") @ManagerAuth(memo = "鍏ㄦ澘鍏ュ簱") public R fullStorePutStart(@RequestBody FullStoreParam fullStoreParam) { - return R.ok("鍏ュ簱鍚姩鎴愬姛").add(workService.startupFullPutStore(fullStoreParam,getUserId())); + try { + String locNo = workService.startupFullPutStore(fullStoreParam, getUserId()); + return R.ok("鍏ュ簱鍚姩鎴愬姛").add(locNo); + } catch (Exception e){ + return R.error("鍏ュ簱鍚姩澶辫触==>"+e.getMessage()); + } } @RequestMapping("/plate/out/start") diff --git a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java index 2db40bd..d22e201 100644 --- a/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/LocMastServiceImpl.java @@ -89,7 +89,7 @@ @Override public LocMast selectLocByLocStsPakInF(Integer curRow,Integer nearRow,LocMast locMast,Long type) { - if (curRow<nearRow){ + if (curRow>nearRow){ return this.baseMapper.selectLocByLocStsPakInF1(locMast.getCrnNo(),locMast.getBay1(),locMast.getLev1(),locMast.getGro1(),type); } return this.baseMapper.selectLocByLocStsPakInF2(locMast.getCrnNo(),locMast.getBay1(),locMast.getLev1(),locMast.getGro1(),type); @@ -107,7 +107,7 @@ // } @Override public LocMast selectLocByLocStsPakInO(Integer curRow,Integer nearRow,LocMast locMast,Long type) { - if (curRow<nearRow){ + if (curRow>nearRow){ return this.baseMapper.selectLocByLocStsPakInO1(locMast.getCrnNo(),locMast.getBay1(),locMast.getLev1(),locMast.getGro1(),type); } return this.baseMapper.selectLocByLocStsPakInO2(locMast.getCrnNo(),locMast.getBay1(),locMast.getLev1(),locMast.getGro1(),type); diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index bb8bf20..3aa9551 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -93,6 +93,9 @@ List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList()); // List<String> batchs = param.getList().stream().map(FullStoreParam.MatCodeStore::getBatch).distinct().collect(Collectors.toList()); StartupDto dto = commonService.getLocNo(1, param.getDevpNo(), matnrs.get(0), null, null,locTypeDto); + if (Cools.isEmpty(dto)){ + throw new CoolException("鏌ヨ搴撲綅澶辫触锛侊紒==銆媠tartupFullPutStore ==銆� commonService.getLocNo"); + } // 鐢熸垚宸ヤ綔鍙� int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index b2690ec..0b98d6b 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -491,31 +491,21 @@ public static int[] LocNecessaryParametersDoubleExtension6(RowLastno rowLastno, Integer curRow, Integer crnNumber) { int[] necessaryParameters = new int[]{0, 0, 0, 0}; Integer sRow = rowLastno.getsRow();//璧峰鎺掑彿 - Integer offset = 0;//璧峰鎺掑彿 + Integer offset = 4;//璧峰鎺掑彿 Integer sCrnNo = rowLastno.getsCrnNo();//璧峰鍫嗗灈鏈哄彿 necessaryParameters[0] = crnNumber; // 杞娆℃暟 curRow = curRow - offset; //婊℃澘姝e父鍏ュ簱 switch (curRow){ - case 2: + case 1: necessaryParameters[1] = 4; //curRow 鏈�娣卞簱浣嶆帓 necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 necessaryParameters[3] = 7; //nearRow 鏈�娴呭簱浣嶆帓 break; - case 7: + case 4: necessaryParameters[1] = 9; //curRow 鏈�娣卞簱浣嶆帓 necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 necessaryParameters[3] = 12; //nearRow 鏈�娴呭簱浣嶆帓 - break; - case 12: - necessaryParameters[1] = 7; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = 4; //nearRow 鏈�娴呭簱浣嶆帓 - break; - case 4: - necessaryParameters[1] = 12; //curRow 鏈�娣卞簱浣嶆帓 - necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 - necessaryParameters[3] = 9; //nearRow 鏈�娴呭簱浣嶆帓 break; case 9: necessaryParameters[1] = 14; //curRow 鏈�娣卞簱浣嶆帓 @@ -523,6 +513,16 @@ necessaryParameters[3] = 14; //nearRow 鏈�娴呭簱浣嶆帓 break; case 14: + necessaryParameters[1] = 7; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = 4; //nearRow 鏈�娴呭簱浣嶆帓 + break; + case 7: + necessaryParameters[1] = 12; //curRow 鏈�娣卞簱浣嶆帓 + necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 + necessaryParameters[3] = 9; //nearRow 鏈�娴呭簱浣嶆帓 + break; + case 12: necessaryParameters[1] = 1; //curRow 鏈�娣卞簱浣嶆帓 necessaryParameters[2] = sCrnNo; //crnNo 鍫嗗灈鏈哄彿 necessaryParameters[3] = 2; //nearRow 鏈�娴呭簱浣嶆帓 diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index fcaf695..408b310 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -139,7 +139,7 @@ log.error("绔欑偣={} 鏈煡璇㈠埌瀵瑰簲鐨勮鍒�",sourceStaNo); break; case 4: - return getLocNoRun2(whsType,staDescId,sourceStaNo,matnr,batch,grade,3,locTypeDto,0); + return getLocNoRun2(whsType,staDescId,sourceStaNo,matnr,batch,grade,4,locTypeDto,0); case 5: return getLocNoRun2(whsType,staDescId,sourceStaNo,matnr,batch,grade,3,locTypeDto,0); default: @@ -536,6 +536,8 @@ int nearbay = 0; //鐩镐技宸ヤ綔妗f 鐩爣搴撲綅鍒� int nearlev = 0; //鐩镐技宸ヤ綔妗f 鐩爣搴撲綅灞� for (WrkMast wrkMast:wrkMasts){ + int curRowW = curRow; //鐩镐技宸ヤ綔妗f 鏈�娣卞簱浣嶆帓 + int nearRowW = nearRow; //鐩镐技宸ヤ綔妗f 鏈�娴呭簱浣嶆帓 if (Cools.isEmpty(wrkMast.getLocNo())){ continue; } @@ -554,15 +556,26 @@ nearbay=Utils.getBay(wrkMast.getLocNo()); nearlev=Utils.getLev(wrkMast.getLocNo()); } + //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撳苟鎺掑簭 // List<String> groupOutsideLocCrn = Utils.getGroupOutLocCrn(curRow,nearRow,wrkMast.getLocNo(), curRow>nearRow); LocMast locMastGro = locMastService.selectById(wrkMast.getLocNo()); + for (int i = 0; i < crnNumber*2; i++) { + if (!(Utils.getRow(locMastGro.getLocNo())>nearRowW && Utils.getRow(locMastGro.getLocNo())<=curRowW) && !(Utils.getRow(locMastGro.getLocNo())<nearRowW && Utils.getRow(locMastGro.getLocNo())>=curRowW) ){ + int[] locNecessaryParameters = Utils.LocNecessaryParameters(rowLastno, curRowW, crnNumber); + curRowW = locNecessaryParameters[1]; + nearRowW = locNecessaryParameters[3]; + }else { + break; + } + } + //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣� - LocMast locMast2 = locMastService.selectLocByLocStsPakInF(curRow,nearRow,locMastGro,rowLastnoType.getType().longValue()); + LocMast locMast2 = locMastService.selectLocByLocStsPakInF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); //鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣嶅瓨鍦�&&闈炴渶澶栦晶搴撲綅&&鍏ュ簱鐘舵�� - if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRow && (locMast2.getLocSts().equals("S") || locMast2.getLocSts().equals("Q"))){ + if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && (locMast2.getLocSts().equals("S") || locMast2.getLocSts().equals("Q"))){ //鑾峰彇搴撳瓨鏄庣粏 WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); //鍒ゆ柇鍚岃鏍肩墿鏂� @@ -570,13 +583,16 @@ && batch.equals(batch.isEmpty() ? "":wrkDetl.getBatch()) && grade.equals(grade.isEmpty()? "":wrkDetl.getBrand())){ int row2=0; - if (Utils.getRow(locMast2.getLocNo())>nearRow){ + if (Utils.getRow(locMast2.getLocNo())>nearRowW){ row2=Utils.getRow(locMast2.getLocNo())-1; } else { row2=Utils.getRow(locMast2.getLocNo())+1; } String targetLocNo = zerofill(String.valueOf(row2), 2) + locMast2.getLocNo().substring(2); - locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",targetLocNo)); + locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",targetLocNo).eq("loc_sts","O")); + if (Cools.isEmpty(locMast)){ + continue; + } break; } } -- Gitblit v1.9.1