From 2c5cd00985bb587710c67a4f642b6413c2590141 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期五, 16 十二月 2022 11:29:47 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 40 ++++++++++++++++++++++++---------------- 1 files changed, 24 insertions(+), 16 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 2a8104d..d18b33a 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -90,7 +90,14 @@ BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true); // 妫�绱㈠簱浣� LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); - List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList()); + + List<String> matnrs = new ArrayList<>(); + for (FullStoreParam.MatCodeStore matCodeStore : param.getList()) { + Mat mat = matService.selectByMatnr(matCodeStore.getMatnr()); + if (mat != null && !matnrs.contains(mat.getMaktx())) { + matnrs.add(mat.getMaktx()); + } + } StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matnrs, locTypeDto, 0); // 鐢熸垚宸ヤ綔鍙� int workNo = dto.getWorkNo(); @@ -220,7 +227,9 @@ // 鑾峰彇搴撲綅 LocMast locMast = locMastService.selectById(dto.getLocNo()); // 鑾峰彇璺緞 - StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), staNo.getDevNo()); + Boolean outMost = locMastService.isOutMost(dto.getLocNo(), false); + Integer outCrnNo = locMastService.getOutCrnNo(locMast); + StaDesc staDesc = staDescService.queryCrnStn(ioType, outCrnNo, staNo.getDevNo()); // 鐢熸垚宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); // 鐢熸垚宸ヤ綔妗� @@ -231,8 +240,8 @@ wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬� Double ioPri = wrkMastService.getIoPri(ioType, dto.getLocNo()); wrkMast.setIoPri(ioPri); // 浼樺厛绾э細13 - wrkMast.setOutMost(locMastService.isOutMost(dto.getLocNo(), false)?1:0);; - wrkMast.setCrnNo(locMast.getCrnNo()); + wrkMast.setOutMost(outMost?1:0);; + wrkMast.setCrnNo(outMost?outCrnNo:locMast.getCrnNo()); wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔� wrkMast.setSourceLocNo(dto.getLocNo()); // 婧愬簱浣� @@ -297,7 +306,9 @@ LocMast locMast = locMastService.selectById(taskDto.getLocNo()); // 鑾峰彇璺緞 int ioType = taskDto.isAll() ? 101 : 103; - StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(), staNo.getDevNo()); + Boolean outMost = locMastService.isOutMost(taskDto.getLocNo(), false); + Integer outCrnNo = locMastService.getOutCrnNo(locMast); + StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, outCrnNo, staNo.getDevNo()); // 鐢熸垚宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); // 鐢熸垚宸ヤ綔妗� @@ -308,8 +319,8 @@ wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬� Double ioPri = wrkMastService.getIoPri(ioType, taskDto.getLocNo()); wrkMast.setIoPri(ioPri); // 浼樺厛绾э細13 - wrkMast.setOutMost(locMastService.isOutMost(taskDto.getLocNo(), false)?1:0);; - wrkMast.setCrnNo(locMast.getCrnNo()); + wrkMast.setOutMost(outMost?1:0);; + wrkMast.setCrnNo(outMost?outCrnNo:locMast.getCrnNo()); wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯 wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔� wrkMast.setSourceLocNo(taskDto.getLocNo()); // 婧愬簱浣� @@ -469,11 +480,13 @@ if (Cools.isEmpty(locMast)) { throw new CoolException(locNo+"搴撲綅涓嶅瓨鍦�"); } + Boolean outMost = locMastService.isOutMost(locNo, false); + Integer outCrnNo = locMastService.getOutCrnNo(locMast); // 鑾峰彇婧愮珯 Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() .eq("type_no", 110) .eq("stn_no", param.getOutSite()) - .eq("crn_no", locMast.getCrnNo()); + .eq("crn_no", outCrnNo); StaDesc staDesc = staDescService.selectOne(wrapper); if (Cools.isEmpty(staDesc)) { throw new CoolException("闈炴硶璺緞锛�"); @@ -492,8 +505,8 @@ wrkMast.setIoPri(ioPri); wrkMast.setSourceStaNo(sourceStaNo); // 婧愮珯 wrkMast.setStaNo(param.getOutSite()); // 鐩爣绔� - wrkMast.setOutMost(locMastService.isOutMost(locNo, false)?1:0);; - wrkMast.setCrnNo(locMast.getCrnNo()); + wrkMast.setOutMost(outMost?1:0);; + wrkMast.setCrnNo(outMost?outCrnNo:locMast.getCrnNo()); wrkMast.setSourceLocNo(locNo); // 婧愬簱浣� wrkMast.setFullPlt("N"); // 婊℃澘锛歒 wrkMast.setPicking("N"); // 鎷f枡 @@ -938,12 +951,7 @@ @Override public StartupDto createWaitPainWrkMastStart(List<WaitPakin> list, Long userId) { - if (Cools.isEmpty(list)) { - throw new CoolException("鍏ュ簱閫氱煡妗d笉鑳戒负绌�"); - } - LocTypeDto locTypeDto = new LocTypeDto(); - locTypeDto.setLocType1((short) 1); - return wcsController.startupFullPutStore(301, list.get(0).getZpallet(), locTypeDto, list); + return null; } @Override -- Gitblit v1.9.1