From d647ee9a9564a769f053d93bd7cf6e95dd8f5b3c Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期四, 19 九月 2024 16:18:13 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/service/CommonService.java | 188 +++++++++++++--------------------------------- 1 files changed, 55 insertions(+), 133 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 15bb57b..195fe0d 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -569,7 +569,7 @@ } //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣� - LocMast locMast2 = locMastService.selectLocByLocStsPakInF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); + LocMast locMast2 = locMastService.selectLocByLocStsPakInShuttleF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); //鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣嶅瓨鍦�&&闈炴渶澶栦晶搴撲綅&&鍏ュ簱鐘舵�� if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && (locMast2.getLocSts().equals("S") || locMast2.getLocSts().equals("Q"))){ @@ -579,13 +579,13 @@ if (!Cools.isEmpty(wrkDetl) && matnr.equals(wrkDetl.getMatnr()) && batch.equals(batch.isEmpty() ? "":wrkDetl.getBatch()) && grade.equals(grade.isEmpty()? "":wrkDetl.getBrand())){ - int row2=0; - if (Utils.getRow(locMast2.getLocNo())>nearRowW){ - row2=Utils.getRow(locMast2.getLocNo())-1; + int bay2=0; + if (Utils.getBay(locMast2.getLocNo())>nearRowW){ + bay2=Utils.getBay(locMast2.getLocNo())-1; } else { - row2=Utils.getRow(locMast2.getLocNo())+1; + bay2=Utils.getBay(locMast2.getLocNo())+1; } - String targetLocNo = zerofill(String.valueOf(row2), 2) + locMast2.getLocNo().substring(2); + String targetLocNo = locMast2.getLocNo().substring(0,2) +zerofill(String.valueOf(bay2), 3) + locMast2.getLocNo().substring(5); locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",targetLocNo).eq("loc_sts","O")); if (Cools.isEmpty(locMast)){ continue; @@ -634,16 +634,16 @@ } } - LocMast locMast2 = locMastService.selectLocByLocStsPakInF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); + LocMast locMast2 = locMastService.selectLocByLocStsPakInShuttleF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && locMast2.getLocSts().equals("S")){ - int row2=0; - if (Utils.getRow(locMast2.getLocNo())>nearRowW){ - row2=Utils.getRow(locMast2.getLocNo())-1; - }else { - row2=Utils.getRow(locMast2.getLocNo())+1; + int bay2=0; + if (Utils.getBay(locMast2.getLocNo())>nearRowW){ + bay2=Utils.getBay(locMast2.getLocNo())-1; + } else { + bay2=Utils.getBay(locMast2.getLocNo())+1; } - String targetLocNo = zerofill(String.valueOf(row2), 2) + locMast2.getLocNo().substring(2); + String targetLocNo = locMast2.getLocNo().substring(0,2) +zerofill(String.valueOf(bay2), 3) + locMast2.getLocNo().substring(5); locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",targetLocNo).eq("loc_sts","O")); if (Cools.isEmpty(locMast)){ continue; @@ -652,113 +652,6 @@ } } } - - boolean signRule1 = false; - boolean signRule2 = false; - - - if (Utils.BooleanWhsTypeStaIoType(rowLastno)){ - // 闈犺繎鎽嗘斁瑙勫垯 --- 鍚屽ぉ鍚岃鏍肩墿鏂� //鍒嗙鐗� - if (!Cools.isEmpty(matnr) && staDescId == 1){ -// signRule1 = true; - } - // 闈犺繎鎽嗘斁瑙勫垯 --- 鍚屽ぉ鍚岃鏍肩墿鏂� //浜掗�氱増 - if (!Cools.isEmpty(matnr) && staDescId == 1) { - signRule2 = true; - } - - if (!Cools.isEmpty(matnr) && (staDescId == 11 || staDescId == 111)) { - signRule1 = true; - } - } - - if (signRule1){ - if (nearRow!=curRow){ - List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>() - .eq("row1", nearRow).eq("loc_sts", "O").eq("whs_type",rowLastnoType.getType().longValue())); - for (LocMast locMast1:locMasts){ - //鑾峰彇宸烽亾 -// List<String> groupOutsideLocCrn = Utils.getGroupOutLocCrn(curRow,nearRow,locMast1.getLocNo(), curRow>nearRow); - //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣� - LocMast locMastF = locMastService.selectLocByLocStsPakInF(curRow,nearRow,locMast1,rowLastnoType.getType().longValue()); - if (!Cools.isEmpty(locMastF) && locMastF.getLocSts().equals("F")){ - LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMastF.getLocNo())); - if (!Cools.isEmpty(locDetl) && matnr.equals(locDetl.getMatnr()) - && batch.equals(batch.isEmpty() ? "" : locDetl.getBatch()) - && grade.equals(grade.isEmpty() ? "" : locDetl.getBrand())) { - //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娣辩┖搴撲綅 - locMast = locMastService.selectLocByLocStsPakInO(curRow,nearRow,locMast1,rowLastnoType.getType().longValue()); - break; - } - } - } - } - }else if (signRule2){ - List<String> locNos = locDetlService.getSameDetlToday(matnr, sRow, eRow); - int nearbay = 0; - int nearlev = 0; - for (String locNo : locNos) { - int curRowW = curRow; //鐩镐技宸ヤ綔妗f 鏈�娣卞簱浣嶆帓 - int nearRowW = nearRow; //鐩镐技宸ヤ綔妗f 鏈�娴呭簱浣嶆帓 - if (Cools.isEmpty(locNo)){ - continue; - } - if (Utils.getRow(locNo)==nearRow){ - continue; - } - if (Utils.getBay(locNo)==nearbay && Utils.getLev(locNo)==nearlev){ - continue; - }else { - nearbay=Utils.getBay(locNo); - nearlev=Utils.getLev(locNo); - } -// List<String> groupOutsideLocCrn = Utils.getGroupOutLocCrn(curRow,nearRow,wrkMast.getLocNo(), curRow>nearRow); - LocMast locMastGro = locMastService.selectById(locNo); - - 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(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); - - if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && locMast2.getLocSts().equals("S")){ - int row2=0; - 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).eq("loc_sts","O")); - if (Cools.isEmpty(locMast)){ - continue; - } - break; - } - } - } - -// // 闈犺繎鎽嗘斁瑙勫垯 --- 绌烘墭 //鍒嗙鐗� -// if (staDescId == 10 && Utils.BooleanWhsTypeStaIoType(rowLastno)) { -// List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("row1", nearRow).eq("loc_sts", "O")); -// for (LocMast locMast1:locMasts){ -// //鑾峰彇宸烽亾 -//// List<String> groupOutsideLocCrn = Utils.getGroupOutLocCrn(curRow,nearRow,locMast1.getLocNo(), curRow>nearRow); -// //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣� -// LocMast locMastF = locMastService.selectLocByLocStsPakInF(curRow,nearRow,locMast1,rowLastnoType.getType().longValue()); -// if (!Cools.isEmpty(locMastF) && locMastF.getLocSts().equals("D")){ -// //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣� -// locMast = locMastService.selectLocByLocStsPakInO(curRow,nearRow,locMast1,rowLastnoType.getType().longValue()); -// break; -// } -// } -// } // 闈犺繎鎽嗘斁瑙勫垯 --- 绌烘墭 //浜掗�氱増 if (staDescId == 10 && Utils.BooleanWhsTypeStaIoType(rowLastno)) { @@ -793,16 +686,16 @@ } } - LocMast locMast2 = locMastService.selectLocByLocStsPakInF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); + LocMast locMast2 = locMastService.selectLocByLocStsPakInShuttleF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && locMast2.getLocSts().equals("S")){ - int row2=0; - if (Utils.getRow(locMast2.getLocNo())>nearRowW){ - row2=Utils.getRow(locMast2.getLocNo())-1; - }else { - row2=Utils.getRow(locMast2.getLocNo())+1; + int bay2=0; + if (Utils.getBay(locMast2.getLocNo())>nearRowW){ + bay2=Utils.getBay(locMast2.getLocNo())-1; + } else { + bay2=Utils.getBay(locMast2.getLocNo())+1; } - String targetLocNo = zerofill(String.valueOf(row2), 2) + locMast2.getLocNo().substring(2); + String targetLocNo = locMast2.getLocNo().substring(0,2) +zerofill(String.valueOf(bay2), 3) + locMast2.getLocNo().substring(5); locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",targetLocNo).eq("loc_sts","O")); if (Cools.isEmpty(locMast)){ continue; @@ -847,20 +740,49 @@ // 1.鎸夎鍒欐煡鎵惧簱浣� if (Cools.isEmpty(locMast) && crnNo != 0) { List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>() - .eq("row1", nearRow) + .eq("bay1", nearRow) .eq("loc_sts", "O").eq("whs_type",rowLastnoType.getType().longValue()) - .orderBy("lev1",true).orderBy("bay1",true));//鏈�娴呭簱浣� + .orderBy("lev1",true).orderBy("row1",false));//鏈�娴呭簱浣� for (LocMast locMast1 : locMasts) { + if (locMast != null){ + break; + } if (!VersionUtils.locMoveCheckLocTypeComplete(locMast1, locTypeDto)) { continue; } if (Utils.BooleanWhsTypeStaIoType(rowLastno)){ //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娣辩┖搴撲綅 - LocMast locMast2 = locMastService.selectLocByLocStsPakInO(curRow,nearRow,locMast1,rowLastnoType.getType().longValue()); - if (!Cools.isEmpty(locMast2) && locMast2.getBay1()==curRow) { - locMast = locMast2; - break; +// LocMast locMast2 = locMastService.selectLocByLocStsPakInO(curRow,nearRow,locMast1,rowLastnoType.getType().longValue()); +// if (!Cools.isEmpty(locMast2) && locMast2.getBay1()==curRow) { +// locMast = locMast2; +// break; +// } + List<LocMast> locMasts1 = null; + if (curRow < nearRow){ + locMasts1 = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("gro1", locMast1.getGro1()) + .orderBy("bay1",true)); + if(locMasts1.size() == 3 || (curRow>20 && locMasts1.size() == 2)){ + locMasts1 = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("gro1", locMast1.getGro1()) + .orderBy("bay1",false)); + } + }else { + locMasts1 = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("gro1", locMast1.getGro1()) + .orderBy("bay1",false)); } + if (Cools.isEmpty(locMasts1)) { + continue; + } + for (LocMast locMastGro1 : locMasts1) { + if (locMastGro1.getLocSts().equals("O")){ + locMast = locMastGro1; + break; + } + } + + } } -- Gitblit v1.9.1