From 0178712209fa92d55f1af021f6cfb1cd201ee474 Mon Sep 17 00:00:00 2001 From: bfwms <1> Date: 星期一, 07 十月 2024 14:22:34 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 75 ++++++++++++++++++++++++++++++------- 1 files changed, 61 insertions(+), 14 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 1e42f78..d6ee4b8 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -94,7 +94,7 @@ // 妫�绱㈠簱浣� LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList()); - StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matnrs, locTypeDto); + StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), matnrs, locTypeDto,0); // 鐢熸垚宸ヤ綔鍙� int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� @@ -478,21 +478,44 @@ Date now = new Date(); // 鍚堝苟鍚岀被椤� Set<String> locNos = new HashSet<>(); + ArrayList<String> locNos2 = new ArrayList<String>(); List<OutLocDto> dtos = new ArrayList<>(); for (LocDetlDto locDetlDto : locDetlDtos) { String locNo = locDetlDto.getLocDetl().getLocNo(); - if (locNos.contains(locNo)) { - for (OutLocDto dto : dtos) { - if (dto.getLocNo().equals(locNo)) { - dto.getLocDetlDtos().add(locDetlDto); - break; + locNos2.add(locNo); + //if (locNos.contains(locNo)) { + //for (OutLocDto dto : dtos) { + // if (dto.getLocNo().equals(locNo)) { + // dto.getLocDetlDtos().add(locDetlDto); + // break; + // } + //} + //} else { + //locNos.add(locNo); + + //dtos.add(new OutLocDto(locNo, locDetlDto)); + //} + } + List<String> innermostSideLoc = Utils.getInnermostSideLoc(locNos2, true); + System.out.println(innermostSideLoc); + for (LocDetlDto locDetlDto : locDetlDtos) { + String locNo = locDetlDto.getLocDetl().getLocNo(); + if(innermostSideLoc.contains(locNo)) { + if (locNos.contains(locNo)) { + for (OutLocDto dto : dtos) { + if (dto.getLocNo().equals(locNo)) { + dto.getLocDetlDtos().add(locDetlDto); + break; + } } + } else { + locNos.add(locNo); + dtos.add(new OutLocDto(locNo, locDetlDto)); } - } else { - locNos.add(locNo); - dtos.add(new OutLocDto(locNo, locDetlDto)); + //dtos.add(new OutLocDto(locNo,locDetlDto)); } } + Integer ioType = null; List<String> excludeLocNos = dtos.stream().map(OutLocDto::getLocNo).distinct().collect(Collectors.toList()); // 鐢熸垚宸ヤ綔妗� @@ -823,7 +846,7 @@ } WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); - waitPakin.setBatch(""); + //waitPakin.setBatch(""); waitPakin.setZpallet(locDetl.getZpallet()); // 鎵樼洏鐮� waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� waitPakin.setAnfme(locDetl.getAnfme()); // 鏁伴噺 @@ -853,6 +876,12 @@ // throw new CoolException("鍙兘瀛樺湪涓�绗旂洏鐐逛换鍔�"); // } } + if (ioType!=101){ + if (basDevp==114 || basDevp==214){ + throw new CoolException("2妤煎彧鍏佽鍏ㄦ澘鍑哄簱锛岃閫夋嫨鍏ㄩ儴鐗╂枡"); + } + } + assert ioType != null; // 鑾峰彇搴撲綅 LocMast locMast = locMastService.selectById(dto.getLocNo()); @@ -868,13 +897,30 @@ // } //} if (ioType == 101) { - if (staNo.getDevNo()==300){ + if (basDevp==300){ if(locMast.getCrnNo() == 1) { staNo.setDevNo(100); } else { staNo.setDevNo(200); } - + } else if (basDevp == 114){ + if (!dto.isSign()){ + staNo.setDevNo(100); + } else { + staNo.setDevNo(basDevp); + } + } else if (basDevp == 214){ + if (!dto.isSign()){ + staNo.setDevNo(200); + } else { + staNo.setDevNo(basDevp); + } + } else { + if(locMast.getCrnNo() == 1) { + staNo.setDevNo(100); + } else { + staNo.setDevNo(200); + } } } else { staNo.setDevNo(basDevp); @@ -1201,7 +1247,7 @@ BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true); // 妫�绱㈠簱浣� LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); - StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 10, devpNo, null, locTypeDto); + StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 10, devpNo, null, locTypeDto,0); int workNo = dto.getWorkNo(); // 鐢熸垚宸ヤ綔妗� WrkMast wrkMast = new WrkMast(); @@ -1512,6 +1558,7 @@ AdjDetl adjDetl = new AdjDetl(); adjDetl.setLocNo(locDetl.getLocNo()); adjDetl.setMatnr(locDetl.getMatnr()); + adjDetl.setSpecs(locDetl.getSpecs()); adjDetl.setBatch(locDetl.getBatch()); adjDetl.setOriQty(locDetl.getAnfme()); adjDetl.setAdjQty(adjust.getCount()); @@ -1663,7 +1710,7 @@ for (WrkDetl wrkDetl : wrkDetls) { if (!Cools.isEmpty(wrkDetl.getOrderNo())){ String[] orderNos = GetOrderNo(wrkDetl.getOrderNo()); - if (!Cools.isEmpty(orderNos)){ + if (!Cools.isEmpty(orderNos) && orderNos.length!=0){ String[] anfmes = GetAnfme(wrkDetl.getOrderNo()); int i = 0; for (String orderNo : orderNos) { -- Gitblit v1.9.1