From 3dbc72ed3bfed1a7f2d3d38b88f71953ed47a531 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期四, 18 八月 2022 10:26:41 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 130 ++++++++++--------------------------------- 1 files changed, 31 insertions(+), 99 deletions(-) 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 25c72b6..0d39802 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -99,6 +99,7 @@ wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 wrkMast.setIoPri(13D); // 浼樺厛绾э細13 + wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), true)?1:0);; wrkMast.setCrnNo(dto.getCrnNo()); wrkMast.setSourceStaNo(dto.getSourceStaNo()); wrkMast.setStaNo(dto.getStaNo()); @@ -197,6 +198,14 @@ Integer ioType = null; // 鐢熸垚宸ヤ綔妗� for (OutLocDto dto : dtos) { + // 濡傛灉涓烘繁搴撲綅锛屼笖瀵瑰簲娴呭簱浣嶄负X.绂佺敤锛屽垯鐣ヨ繃姝ゅ簱浣� + if (Utils.isDeepLoc(slaveProperties, dto.getLocNo())) { + String shallowLoc = Utils.getShallowLoc(slaveProperties, dto.getLocNo()); + if (locMastService.selectById(shallowLoc).getLocSts().equals("X")) { + continue; + } + } + // 鍒ゆ柇鍏ュ嚭搴撶被鍨嬶細101.鍏ㄦ澘鍑哄簱 or 103.鎷f枡鍑哄簱 if (ioWorkType == null) { ioType = dto.isAll() ? 101 : 103; @@ -217,6 +226,7 @@ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬� wrkMast.setIoPri(13D); // 浼樺厛绾э細13 + wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), false)?1:0);; wrkMast.setCrnNo(locMast.getCrnNo()); wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔� @@ -291,6 +301,7 @@ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬� wrkMast.setIoPri(13D); // 浼樺厛绾э細13 + wrkMast.setOutMost(locMastService.isOutMost(taskDto.getLocNo(), false)?1:0);; wrkMast.setCrnNo(locMast.getCrnNo()); wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔� @@ -366,6 +377,7 @@ wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID wrkMast.setIoType(10); // 鍏ュ嚭搴撶姸鎬侊細10.绌烘澘鍏ュ簱 wrkMast.setIoPri(10D); // 浼樺厛绾э細10 + wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), true)?1:0);; wrkMast.setCrnNo(dto.getCrnNo()); wrkMast.setSourceStaNo(dto.getSourceStaNo()); wrkMast.setStaNo(dto.getStaNo()); @@ -414,6 +426,13 @@ throw new CoolException("绔欑偣涓嶅瓨鍦�"); } for (String locNo : param.getLocNos()) { + // 濡傛灉涓烘繁搴撲綅锛屼笖瀵瑰簲娴呭簱浣嶄负X.绂佺敤锛屽垯鐣ヨ繃姝ゅ簱浣� + if (Utils.isDeepLoc(slaveProperties, locNo)) { + String shallowLoc = Utils.getShallowLoc(slaveProperties, locNo); + if (locMastService.selectById(shallowLoc).getLocSts().equals("X")) { + continue; + } + } // 鑾峰彇宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.PAKOUT.type); // 鑾峰彇搴撲綅 @@ -440,6 +459,7 @@ wrkMast.setIoPri(10D); wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯 wrkMast.setStaNo(param.getOutSite()); // 鐩爣绔� + wrkMast.setOutMost(locMastService.isOutMost(locNo, false)?1:0);; wrkMast.setCrnNo(locMast.getCrnNo()); wrkMast.setSourceLocNo(locNo); // 婧愬簱浣� wrkMast.setFullPlt("N"); // 婊℃澘锛歒 @@ -512,6 +532,7 @@ wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID wrkMast.setIoType(11); // 鍏ュ嚭搴撶姸鎬侊細 11.搴撴牸绉昏浇 wrkMast.setIoPri(10D); + wrkMast.setOutMost(locMastService.isOutMost(locNo, false)?1:0);; wrkMast.setCrnNo(sourceLoc.getCrnNo()); wrkMast.setSourceLocNo(sourceLocNo); // 婧愬簱浣� wrkMast.setLocNo(locNo); // 鐩爣搴撲綅 @@ -575,15 +596,15 @@ if (Cools.isEmpty(wrkMast)){ throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪"); } - if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) { + if (wrkMast.getWrkSts() == 9 || wrkMast.getWrkSts() == 17) { throw new CoolException("褰撳墠宸ヤ綔妗e凡瀹屾垚"); } // 鍏ュ簱 + 搴撲綅杞Щ - if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) { - wrkMast.setWrkSts(4L); - // 鍑哄簱 + if (wrkMast.getWrkSts() < 9 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) { + wrkMast.setWrkSts(9L); + // 鍑哄簱 } else if (wrkMast.getWrkSts() > 10) { - wrkMast.setWrkSts(14L); + wrkMast.setWrkSts(17L); } Date now = new Date(); wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true)); @@ -731,11 +752,8 @@ if (wrkMast.getWrkSts() < 4) { locNo = wrkMast.getLocNo(); locSts = "O"; - /** - * 搴撲綅杞Щ - * 鍙栨秷鍚� 婧愬簱浣� ==>> F.鍦ㄥ簱 - * 鐩爣搴撲綅 ===>> O.绌哄簱浣� - **/ + + // 搴撲綅杞Щ if (wrkMast.getIoType() == 11) { // 搴撲綅杞Щ锛氭簮搴撲綅 LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo()); @@ -889,96 +907,10 @@ @Override @Transactional public String dealPreHaveStart(Integer wrkNo, Long userId) { - WrkMast wrkMast = wrkMastService.selectById(wrkNo); - if (wrkMast == null) { - throw new CoolException("浠诲姟宸插け鏁�"); + if (true) { + throw new CoolException("鍔熻兘鍋滅敤"); } - String locNo = wrkMast.getLocNo(); - LocMast locMast = locMastService.selectById(locNo); - assert locMast != null; - RowLastno rowLastno = rowLastnoService.findBySection(locMast.getRow1()); - assert rowLastno != null; - - // 鐩爣搴撲綅 - LocMast targetLoc = null; - - for (int curRow = rowLastno.getsRow(); curRow<=rowLastno.geteRow(); curRow++) { - - if (Utils.isShallowLoc(slaveProperties, curRow)) { - Integer deepRow = Utils.getDeepRow(slaveProperties, curRow); - targetLoc = locMastService.queryFreeLocMast(deepRow, locMast.getLocType1()); - // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣� - if (!locMastService.checkEmptyCount(targetLoc)) { - continue; - } - } - if (Cools.isEmpty(targetLoc)) { - targetLoc = locMastService.queryFreeLocMast(curRow, locMast.getLocType1()); - // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣� - if (!locMastService.checkEmptyCount(targetLoc)) { - continue; - } - // 鐩爣搴撲綅 ===>> 娴呭簱浣嶏紝 鍒欐牎楠屽叾娣卞簱浣嶆槸鍚︿负 F D X - if (null != targetLoc && Utils.isShallowLoc(slaveProperties, targetLoc.getLocNo())) { - LocMast deepLoc = locMastService.selectById(Utils.getDeepLoc(slaveProperties, targetLoc.getLocNo())); - if (!deepLoc.getLocSts().equals("F") && !deepLoc.getLocSts().equals("D") && !deepLoc.getLocSts().equals("X")) { - continue; - } - } - // 鐩爣搴撲綅 ===>> 娣卞簱浣嶏紝 鍒欐牎楠屽叾娴呭簱浣嶆槸鍚︿负 O - if (null != targetLoc && Utils.isDeepLoc(slaveProperties, targetLoc.getLocNo())) { - LocMast shallowLoc = locMastService.selectById(Utils.getShallowLoc(slaveProperties, targetLoc.getLocNo())); - if (!shallowLoc.getLocSts().equals("O")) { - continue; - } - } - } - - if (!Cools.isEmpty(targetLoc)) { - break; - } - - } - - if (targetLoc == null) { - throw new CoolException("鎿嶄綔澶辫触锛屽綋鍓嶄粨搴撴壘涓嶅埌绌哄簱浣�"); - } - - Date now = new Date(); - // 淇敼宸ヤ綔妗� - StaDesc staDesc = staDescService.queryCrnStn(targetLoc.getCrnNo()); - if (Cools.isEmpty(staDesc)) { - throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�"); - } - wrkMast.setWrkSts(2L); - wrkMast.setLocNo(targetLoc.getLocNo()); - wrkMast.setStaNo(staDesc.getCrnStn()); - wrkMast.setCrnNo(targetLoc.getCrnNo()); - wrkMast.setModiTime(now); - wrkMast.setModiUser(userId); - wrkMast.setPreHave("N"); - if (!wrkMastService.updateById(wrkMast)) { - throw new CoolException("淇敼宸ヤ綔妗eけ璐�"); - } - // 淇敼搴撲綅鐘舵�� O ===>>> S - if (targetLoc.getLocSts().equals("O")){ - targetLoc.setLocSts("S"); // S.鍏ュ簱棰勭害 - targetLoc.setModiUser(userId); - targetLoc.setModiTime(now); - if (!locMastService.updateById(targetLoc)){ - throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�"); - } - } else { - throw new CoolException(targetLoc.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤"); - } - // 绂佺敤寮傚父搴撲綅 -// locMast.setLocSts("X"); // X.绂佺敤 -// locMast.setModiUser(userId); -// locMast.setModiTime(now); -// if (!locMastService.updateById(locMast)){ -// throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�"); -// } - return targetLoc.getLocNo(); + return ""; } } -- Gitblit v1.9.1