From 9f3f31e66b2ffb217155b9bcd294da4ec12b6e34 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期一, 16 十月 2023 15:38:47 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/tzskasrs' into tzskasrs --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 66 ++++++++++++++++++++++++++------ 1 files changed, 53 insertions(+), 13 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 f999701..4a76d35 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -191,13 +191,13 @@ } } - List<String> groupInnerLoc = Utils.getGroupInnerLoc(locNo); - if (!Cools.isEmpty(groupInnerLoc)) { - for (String insideLoc : groupInnerLoc) { - if (locNos.contains(insideLoc)){ + List<String> groupOuterLoc = Utils.getGroupOuterLoc(locNo); + if (!Cools.isEmpty(groupOuterLoc)) { + for (String outerLoc : groupOuterLoc) { + if (locNos.contains(outerLoc)){ continue; } - LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", insideLoc)); + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", outerLoc)); if (locMast != null) { if (!locMast.getLocSts().equals("O") && !locMast.getLocSts().equals("R")){ sign=true; @@ -217,7 +217,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch(), null); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } @@ -304,6 +304,21 @@ StaDesc staDesc = staDescService.queryCrnStn(ioType, outCrnNo, staNo.getDevNo()); // 鐢熸垚宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); + + Integer stnNo = staDesc.getStnNo();//鐩爣绔� + Integer sourceStaNo = staDesc.getCrnStn();//婧愮珯 + if (stnNo == 325 || stnNo == 331 || stnNo == 333 || stnNo == 339) { + stnNo = staDesc.getCrnStn(); + sourceStaNo = staDesc.getStnNo(); + } + + int lev = Utils.getLev(dto.getLocNo()); + if (lev == 1 || lev == 2) { + if (!(stnNo == 100 || stnNo == 103 || stnNo == 105)) { + throw new CoolException("1銆�2灞傝揣鐗╀粎鍏佽鍦ㄤ竴妤艰繘琛屽嚭搴�"); + } + } + // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); @@ -314,8 +329,8 @@ wrkMast.setIoPri(ioPri); // 浼樺厛绾э細13 wrkMast.setOutMost(outMost?1:0);; wrkMast.setCrnNo(outMost?outCrnNo:locMast.getCrnNo()); - wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 - wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔� + wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯 + wrkMast.setStaNo(stnNo); // 鐩爣绔� wrkMast.setSourceLocNo(dto.getLocNo()); // 婧愬簱浣� wrkMast.setFullPlt("Y"); // 婊℃澘锛歒 wrkMast.setPicking("N"); // 鎷f枡 @@ -382,6 +397,21 @@ StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, outCrnNo, staNo.getDevNo()); // 鐢熸垚宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); + + Integer stnNo = staDesc.getStnNo();//鐩爣绔� + Integer sourceStaNo = staDesc.getCrnStn();//婧愮珯 + if (stnNo == 325 || stnNo == 331 || stnNo == 333 || stnNo == 339) { + stnNo = staDesc.getCrnStn(); + sourceStaNo = staDesc.getStnNo(); + } + + int lev = Utils.getLev(taskDto.getLocNo()); + if (lev == 1 || lev == 2) { + if (!(stnNo == 100 || stnNo == 103 || stnNo == 105)) { + throw new CoolException("1銆�2灞傝揣鐗╀粎鍏佽鍦ㄤ竴妤艰繘琛屽嚭搴�"); + } + } + // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); wrkMast.setWrkNo(workNo); @@ -392,8 +422,8 @@ wrkMast.setIoPri(ioPri); // 浼樺厛绾э細13 wrkMast.setOutMost(outMost?1:0);; wrkMast.setCrnNo(outMost?outCrnNo:locMast.getCrnNo()); - wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 - wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔� + wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯 + wrkMast.setStaNo(stnNo); // 鐩爣绔� wrkMast.setSourceLocNo(taskDto.getLocNo()); // 婧愬簱浣� wrkMast.setFullPlt("Y"); // 婊℃澘锛歒 wrkMast.setPicking("N"); // 鎷f枡 @@ -411,7 +441,7 @@ // 鐢熸垚宸ヤ綔妗f槑缁� for (LocDto locDto : taskDto.getLocDtos()) { if (locDto.getAnfme()==null || locDto.getAnfme() <= 0.0D) { continue; } - LocDetl locDetl = locDetlService.selectItem(locDto.getLocNo(), locDto.getMatnr(), locDto.getBatch()); + LocDetl locDetl = locDetlService.selectItem(locDto.getLocNo(), locDto.getMatnr(), locDto.getBatch(), locDto.getContainerCode()); if (locDetl == null || locDetl.getAnfme() < locDto.getAnfme()) { throw new CoolException(locDto.getLocNo() + "搴撲綅涓�" + locDto.getMatnr() + "鍟嗗搧搴撳瓨涓嶈冻锛�"); } @@ -429,6 +459,9 @@ wrkDetl.setAppeUser(userId); wrkDetl.setModiTime(now); wrkDetl.setModiUser(userId); + wrkDetl.setSuppCode(locDto.getContainerCode()); + wrkDetl.setThreeCode(locDto.getCsocode()); + wrkDetl.setDeadTime(locDto.getIsoseq()); if (!wrkDetlService.insert(wrkDetl)) { throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�"); } @@ -654,7 +687,7 @@ List<LocDetlDto> locDetlDtos = new ArrayList<>(); for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) { if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) { - LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch()); + LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch(),paramLocDetl.getContainerCode()); if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount())); } } @@ -755,6 +788,13 @@ if (Cools.isEmpty(wrkMast)){ throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪"); } + + if (wrkMast.getIoType() == 200) { + //灏忚溅绉诲簱浠诲姟锛岀洿鎺ュ垹闄ゅ伐浣滄。 + wrkMastService.deleteById(wrkMast); + return; + } + if (wrkMast.getWrkSts() == 9 || wrkMast.getWrkSts() == 29) { throw new CoolException("褰撳墠宸ヤ綔妗e凡瀹屾垚"); } @@ -921,7 +961,7 @@ throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪"); } - if (wrkMast.getWrkSts() == 200) { + if (wrkMast.getIoType() == 200) { //灏忚溅绉诲簱浠诲姟锛岀洿鎺ュ垹闄ゅ伐浣滄。 wrkMastService.deleteById(wrkMast); return; -- Gitblit v1.9.1