From b64f451f37fafdaac2262972d3711d2370b72480 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期三, 19 七月 2023 16:20:23 +0800 Subject: [PATCH] #接口对接工具类实装 --- src/main/java/com/zy/common/service/CommonService.java | 201 +++++++------------------------------------------- 1 files changed, 29 insertions(+), 172 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index c149378..c8ff3bc 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -97,37 +97,8 @@ */ @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); - } - + whsType = 1; StartupDto startupDto = new StartupDto(); - - RowLastno rowLastno = rowLastnoService.selectById(whsType); if (Cools.isEmpty(rowLastno)) { @@ -140,8 +111,7 @@ int eRow = rowLastno.geteRow(); int crn_qty = rowLastno.getCrnQty(); int rowCount = eRow - sRow + 1; - // 鐩爣鍫嗗灈鏈哄彿 - int crnNo = 0; + // 鐩爣搴撲綅 LocMast locMast = null; @@ -159,7 +129,6 @@ if (VersionUtils.locMoveCheckLocType(shallowLoc, locTypeDto)) { if (basCrnpService.checkSiteError(shallowLoc.getCrnNo(), true)) { locMast = shallowLoc; - crnNo = locMast.getCrnNo(); break; } } @@ -181,7 +150,6 @@ if (shallowLoc != null && shallowLoc.getLocSts().equals("O")) { if (basCrnpService.checkSiteError(shallowLoc.getCrnNo(), true)) { locMast = shallowLoc; - crnNo = locMast.getCrnNo(); break; } } @@ -192,61 +160,6 @@ // 濡傛灉娌℃湁鐩歌繎鐗╂枡锛屽垯鎸夎鍒欒疆璇㈣揣鏋� if (null == locMast){ curRow = getCurRow(curRow); - if (curRow == 0){ - crnNo = 0; - }else if( curRow <= 8 && curRow > 0){ - crnNo=(curRow+1)/2; - }else if (curRow <= 12 && curRow >= 9){ - crnNo=5; - }else if (curRow <= 14 && curRow >= 13){ - crnNo=6; - }else if (curRow <= 18 && curRow >= 15){ - crnNo=7; - } - if (curRow!=0 && !basCrnpService.checkSiteError(crnNo, true)) { - crnNo = 0; - } - } - -// // 濡傛灉娌℃湁鐩歌繎鐗╂枡锛屽垯鎸夎鍒欒疆璇㈣揣鏋� -// 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) - .eq("stn_no", sourceStaNo) - .eq("crn_no", crnNo); - StaDesc staDesc = staDescService.selectOne(wrapper); - if (Cools.isEmpty(staDesc)) { - log.error("type_no={},stn_no={},crn_no={}", staDescId, sourceStaNo, crnNo); - throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�"); - } - BasDevp staNo = basDevpService.selectById(staDesc.getCrnStn()); - if (!staNo.getAutoing().equals("Y")) { - throw new CoolException("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�"); } // 鏇存柊搴撲綅鎺掑彿 @@ -288,49 +201,33 @@ } } } - //20230203娣诲姞 lfd鏂欑搴撴牴鎹緭閫佺嚎绛涢�夊叆搴� - if (!Cools.isEmpty(locMast) && locMast.getCrnNo()<5){ - int wrkMastsC0 = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", locMast.getCrnNo()).eq("io_type",1)); - if (wrkMastsC0>3){ - BasCrnp basCrnp1 = basCrnpService.selectById(1); - if (basCrnp1.getInEnable().equals("Y") && basCrnp1.getCrnSts().equals(3)){ - int wrkMastsC1 = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", 1).eq("io_type",1)); - if (wrkMastsC0>wrkMastsC1){ - locMast=null; - } + Integer crnNo = 0; + BasDevp staNo =null; + boolean sign=false; + if (!Cools.isEmpty(locMast)){ + try{ + crnNo = locMast.getCrnNo(); + // 鑾峰彇鐩爣绔� + Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() + .eq("type_no", staDescId) + .eq("stn_no", sourceStaNo) + .eq("crn_no", crnNo); + StaDesc staDesc = staDescService.selectOne(wrapper); + if (Cools.isEmpty(staDesc)) { + log.error("type_no={},stn_no={},crn_no={}", staDescId, sourceStaNo, crnNo); + throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�"); } - if (!Cools.isEmpty(locMast)){ - BasCrnp basCrnp2 = basCrnpService.selectById(2); - if (basCrnp2.getInEnable().equals("Y") && basCrnp2.getCrnSts().equals(3)){ - int wrkMastsC2 = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", 2).eq("io_type",1)); - if (wrkMastsC0>wrkMastsC2){ - locMast=null; - } - } + staNo = basDevpService.selectById(staDesc.getCrnStn()); + if (!staNo.getAutoing().equals("Y")) { + throw new CoolException("鐩爣绔�"+staDesc.getCrnStn()+"涓嶅彲鐢�"); } - if (!Cools.isEmpty(locMast)){ - BasCrnp basCrnp3 = basCrnpService.selectById(3); - if (basCrnp3.getInEnable().equals("Y") && basCrnp3.getCrnSts().equals(3)){ - int wrkMastsC3 = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", 3).eq("io_type",1)); - if (wrkMastsC0>wrkMastsC3){ - locMast=null; - } - } - } - if (!Cools.isEmpty(locMast)){ - BasCrnp basCrnp4 = basCrnpService.selectById(4); - if (basCrnp4.getInEnable().equals("Y") && basCrnp4.getCrnSts().equals(3)){ - int wrkMastsC4 = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("crn_no", 4).eq("io_type",1)); - if (wrkMastsC0>wrkMastsC4){ - locMast=null; - } - } - } + }catch (Exception e){ + sign=true; } } // 2.搴撲綅褰撳墠鎵�灞炲昂瀵告棤绌哄簱浣嶆椂锛岃皟鏁村昂瀵稿弬鏁帮紝鍚戜笂鍏煎妫�绱㈠簱浣� - if (Cools.isEmpty(locMast)) { + if (Cools.isEmpty(locMast) || sign) { // 褰撳墠宸烽亾鏃犵┖搴撲綅鏃讹紝閫掑綊璋冩暣鑷充笅涓�宸烽亾锛屾绱㈠叏閮ㄥ贩閬撴棤鏋滃悗锛岃烦鍑洪�掑綊 if (times < rowCount) { times = times + 1; @@ -377,52 +274,12 @@ * 鏍规嵁鍏ュ簱绔欒幏鍙栧簱浣嶆帓鍙峰垎閰� */ private Integer getCurRow(Integer curRow) { - boolean sign=false; - int count=0; - while (!sign){ - count=count+1; - if (count==5){ - return 0; - } - switch (curRow){ - case 1: - case 3: - case 5: - case 2: - case 4: - case 6: - curRow=curRow+2; - break; - case 7: - curRow=2; - break; - case 8: - curRow=1; - break; - case 13: - return 14; - case 14: - return 13; - case 9: - return 12; - case 10: - return 11; - case 11: - return 9; - case 12: - return 10; - case 15: - return 18; - case 16: - return 17; - case 17: - return 15; - case 18: - return 16; - default: - throw new CoolException("搴撲綅鎺掑彿寮傚父锛氭帓鍙凤細"+curRow); - } - sign = basCrnpService.checkSiteError((curRow+1)/2, true); + if (Utils.isDeepLocLeft(slaveProperties,curRow)){ + curRow=curRow+3; + }else if (Utils.isDeepLocLeft(slaveProperties,curRow-1)){ + curRow=curRow+1; + }else { + curRow=curRow-2; } return curRow; } -- Gitblit v1.9.1