From bdedd25a9a5eb45e54ed6034af6a074ac593cca8 Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期二, 05 十一月 2024 16:17:36 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/service/CommonService.java | 192 +++++++---------------------------------------- 1 files changed, 31 insertions(+), 161 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 980c5e6..7e9701e 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -542,176 +542,40 @@ 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; - } - //鐩爣鎺掍负鏈�澶栧眰鎺� - if (Utils.getRow(wrkMast.getLocNo())==nearRow){ - continue; - } - //璧峰绔欎笉涓�鑷� - if (!wrkMast.getSourceStaNo().equals(sourceStaNo)){ - continue; - } - //鐩稿悓鍒椼�佸眰杩囨护 - if (Utils.getBay(wrkMast.getLocNo())==nearbay && Utils.getLev(wrkMast.getLocNo())==nearlev){ - continue; + LocMast locMastWrk = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo())); + List<LocMast> locMasts = new ArrayList<>(); + if (locMastWrk.getBay1() >=1 && locMastWrk.getBay1()<=2){ + locMasts = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("gro1", locMastWrk.getGro1()) + .eq("crn_no", 7) + .orderBy("bay1", true)); + }else if (locMastWrk.getBay1() >=4 && locMastWrk.getBay1()<=12){ + locMasts = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("gro1", locMastWrk.getGro1()) + .eq("crn_no", 7) + .orderBy("bay1", false)); }else { - nearbay=Utils.getBay(wrkMast.getLocNo()); - nearlev=Utils.getLev(wrkMast.getLocNo()); + locMasts = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("gro1", locMastWrk.getGro1()) + .eq("crn_no", 7) + .orderBy("bay1", true)); } - - //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撳苟鎺掑簭 -// 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,whsType); - curRowW = locNecessaryParameters[1]; - nearRowW = locNecessaryParameters[3]; - }else { + if (Cools.isEmpty(locMasts)) { + continue; + } + for (LocMast locMastGro1 : locMasts) { + if (locMastGro1.getLocSts().equals("P") || locMastGro1.getLocSts().equals("Q")) { + break; + } + if (locMastGro1.getLocSts().equals("O") || locMastGro1.getLocSts().equals("S")){ + locMast = locMastGro1; break; } } - //鑾峰彇鐩爣搴撲綅鎵�鍦ㄥ贩閬撴渶娴呴潪绌哄簱浣� - 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"))){ - //鑾峰彇搴撳瓨鏄庣粏 - WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); - //鍒ゆ柇鍚岃鏍肩墿鏂� - if (!Cools.isEmpty(wrkDetl) && matnr.equals(wrkDetl.getMatnr()) - && batch.equals(batch.isEmpty() ? "":wrkDetl.getBatch()) - && grade.equals(grade.isEmpty()? "":wrkDetl.getBrand())){ - int bay2=0; - if (Utils.getBay(locMast2.getLocNo())>nearRowW){ - bay2=Utils.getBay(locMast2.getLocNo())-1; - } else { - bay2=Utils.getBay(locMast2.getLocNo())+1; - } - 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; - } - break; - } - } } - } - - // 鐩镐技宸ヤ綔妗� --- 绌烘墭 - if (Cools.isEmpty(locMast) && staDescId == 10) { - List<WrkMast> wrkMasts =wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("io_type",10).eq("crn_no",crnNo).eq("whs_type",rowLastnoType.getType().longValue())); - int nearbay = 0; - int nearlev = 0; - for (WrkMast wrkMast:wrkMasts){ - int curRowW = curRow; //鐩镐技宸ヤ綔妗f 鏈�娣卞簱浣嶆帓 - int nearRowW = nearRow; //鐩镐技宸ヤ綔妗f 鏈�娴呭簱浣嶆帓 - if (Cools.isEmpty(wrkMast.getLocNo())){ - continue; - } - if (Utils.getRow(wrkMast.getLocNo())==nearRow){ - continue; - } - //璧峰绔欎笉涓�鑷� - if (!wrkMast.getSourceStaNo().equals(sourceStaNo)){ - continue; - } - if (Utils.getBay(wrkMast.getLocNo())==nearbay && Utils.getLev(wrkMast.getLocNo())==nearlev){ - continue; - }else { - 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,whsType); - curRowW = locNecessaryParameters[1]; - nearRowW = locNecessaryParameters[3]; - }else { - break; - } - } - - LocMast locMast2 = locMastService.selectLocByLocStsPakInShuttleF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); - - if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && locMast2.getLocSts().equals("S")){ - int bay2=0; - if (Utils.getBay(locMast2.getLocNo())>nearRowW){ - bay2=Utils.getBay(locMast2.getLocNo())-1; - } else { - bay2=Utils.getBay(locMast2.getLocNo())+1; - } - 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; - } - break; - } - } - } - - // 闈犺繎鎽嗘斁瑙勫垯 --- 绌烘墭 //浜掗�氱増 - if (staDescId == 10 && Utils.BooleanWhsTypeStaIoType(rowLastno)) { - List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D").ge("row1", sRow).le("row1", eRow).eq("crn_no",7)); - int nearbay = 0; - int nearlev = 0; - for (LocMast locMastSign:locMasts){ - int curRowW = curRow; //鐩镐技宸ヤ綔妗f 鏈�娣卞簱浣嶆帓 - int nearRowW = nearRow; //鐩镐技宸ヤ綔妗f 鏈�娴呭簱浣嶆帓 - if (Cools.isEmpty(locMastSign.getLocNo())){ - continue; - } - if (Utils.getRow(locMastSign.getLocNo())==nearRow){ - continue; - } - if (Utils.getBay(locMastSign.getLocNo())==nearbay && Utils.getLev(locMastSign.getLocNo())==nearlev){ - continue; - }else { - nearbay=Utils.getBay(locMastSign.getLocNo()); - nearlev=Utils.getLev(locMastSign.getLocNo()); - } -// List<String> groupOutsideLocCrn = Utils.getGroupOutLocCrn(curRow,nearRow,wrkMast.getLocNo(), curRow>nearRow); - LocMast locMastGro = locMastService.selectById(locMastSign.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,whsType); - curRowW = locNecessaryParameters[1]; - nearRowW = locNecessaryParameters[3]; - }else { - break; - } - } - - LocMast locMast2 = locMastService.selectLocByLocStsPakInShuttleF(curRowW,nearRowW,locMastGro,rowLastnoType.getType().longValue()); - - if (!Cools.isEmpty(locMast2) && Utils.getRow(locMast2.getLocNo())!=nearRowW && locMast2.getLocSts().equals("S")){ - int bay2=0; - if (Utils.getBay(locMast2.getLocNo())>nearRowW){ - bay2=Utils.getBay(locMast2.getLocNo())-1; - } else { - bay2=Utils.getBay(locMast2.getLocNo())+1; - } - 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("crn_no",7).eq("loc_sts","O")); - if (Cools.isEmpty(locMast)){ - continue; - } - break; - } - } } Wrapper<StaDesc> wrapper = null; @@ -790,6 +654,12 @@ continue; } for (LocMast locMastGro1 : locMasts1) { + if (locMastGro1.getLocSts().equals("F")){ + LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_No", locMastGro1.getLocNo())); + if (!locDetl.getMatnr().equals(matnr) || !locDetl.getBatch().equals(batch)){ + break; + } + } if (locMastGro1.getLocSts().equals("P") || locMastGro1.getLocSts().equals("Q")) { break; } -- Gitblit v1.9.1