From b453fa6c987210616dfab066cc097cf9f742999e Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期五, 25 十月 2024 09:24:29 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 41 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 36 insertions(+), 5 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 d6ee4b8..528ac3f 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -170,6 +170,8 @@ List<StockOutParam.LocDetl> stockOutParamLocDetlSort = Utils.getStockOutParamLocDetlSort(param.getLocDetls()); boolean sign = true; + boolean isfull = false; // 鏄惁澶熸暟閲� + Double isOut = 0.0; List<String> locNoWeighting = new ArrayList<>(); for (StockOutParam.LocDetl locDetl : stockOutParamLocDetlSort) { if (Cools.isEmpty(locNoWeighting)){ @@ -191,6 +193,10 @@ for (String locNo : groupOuterSingleLoc) { //姣忎釜搴撲綅鐨勫簱浣嶆槑缁� if(locs.contains(locNo)) continue; + LocMast mast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locNo)); + if (mast.getLocSts().equals("P") || mast.getLocSts().equals("Q")){ + throw new CoolException("褰撳墠搴撲綅鐨勬祬搴撲綅鐘舵�佷负" + mast.getLocSts() + "鏆備笉鏀寔鍑哄簱锛�"); + } for (LocDetl detl : locDetlService.selectByLocNo(locNo)) { if (!detl.getMatnr().equals(locDetl.getMatnr())) { //涓嶆槸鐩稿悓鐗╂枡 @@ -199,11 +205,28 @@ } continue; } - locDetls.add(new StockOutParam.LocDetl(detl.getLocNo(), detl.getMatnr(), detl.getBatch(), detl.getAnfme())); + if (!param.getOutSite().equals(214) && !param.getOutSite().equals(114)){ + if (detl.getAnfme() >= locDetl.getCount()) { + locDetls.add(new StockOutParam.LocDetl(detl.getLocNo(), detl.getMatnr(), detl.getBatch(), locDetl.getCount())); + isOut = locDetl.getCount(); + isfull = true; + break; + } else { + locDetls.add(new StockOutParam.LocDetl(detl.getLocNo(), detl.getMatnr(), detl.getBatch(), detl.getAnfme())); + isOut = detl.getAnfme(); + } + } else { + //寮哄埗涓嶆槸鐩稿悓鐗╂枡 + locDetls.add(new StockOutParam.LocDetl(detl.getLocNo(), detl.getMatnr(), detl.getBatch(), detl.getAnfme())); + } } } } - locDetls.add(locDetl); + if (!isfull) { + + locDetls.add(new StockOutParam.LocDetl(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch(), locDetl.getCount() - isOut)); +// locDetls.add(locDetl); + } } //鍑哄簱鏃讹紝濡傛灉褰撳墠搴撲綅缁勬湁鐩稿悓鐨勭墿鏂欙紝鍒欏厛鍑哄渚х墿鏂� 6.30鏃� 娉ㄩ噴 //for (StockOutParam.LocDetl locDetl : param.getLocDetls()) { @@ -794,8 +817,17 @@ if (locNos.contains(locNo)) { for (OutLocDto dto : dtos) { if (dto.getLocNo().equals(locNo)) { - dto.getLocDetlDtos().add(locDetlDto); - break; + boolean signDto = false; + for (LocDetlDto locDetlDto1 : dto.getLocDetlDtos()){ + if (locDetlDto1.getLocDetl().getBatch().equals(locDetlDto.getLocDetl().getBatch()) + && locDetlDto1.getLocDetl().getMatnr().equals(locDetlDto.getLocDetl().getMatnr())){ + signDto = true; + } + } + if (!signDto){ + dto.getLocDetlDtos().add(locDetlDto); + break; + } } } } else { @@ -813,7 +845,6 @@ continue; } } - //-----------------2023.5.31涓婃灦鍖哄煙鐗堟湰鍏煎浠g爜----------------------- //鍒ゆ柇褰撳墠搴撲綅缁勬槸鍚﹀潎涓哄悓涓�绉嶇墿鏂欙紝濡備笉鏄紝鍒欒瀹氶渶瑕佹墽琛屽吋瀹逛唬鐮� //闇�瑕佸皢寰呭嚭搴撳簱浣嶅墠渚у簱浣�(涓嶅寘鍚渶澶栦晶楂橀搴撲綅)鎵ц101鍏ㄦ澘鍑哄簱 -- Gitblit v1.9.1