From 0abb8fc8c901a9aedf70c7c0e5bb86dbd2bd4031 Mon Sep 17 00:00:00 2001 From: TQS <56479841@qq.com> Date: 星期三, 11 一月 2023 13:45:46 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/service/CommonService.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 46 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index d1705b5..f343216 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -19,6 +19,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 璐ф灦鏍稿績鍔熻兘 @@ -55,6 +56,8 @@ private LocDetlService locDetlService; @Autowired private SlaveProperties slaveProperties; + @Autowired + private MatService matService; /** * 鐢熸垚宸ヤ綔鍙� @@ -113,16 +116,25 @@ StartupDto startupDto = new StartupDto(); int start; int end; + Integer theCrnNo = null; switch (sourceStaNo) { case 103: whsType = 1; start = 1; end = 14; + if (null != wrkMastService.selectPakoutOfStaNo(104)) { + start = 8; + theCrnNo = 2; + } break; case 203: whsType = 2; start = 8; end = 21; + if (null != wrkMastService.selectPakoutOfStaNo(204)) { + end = 14; + theCrnNo = 2; + } break; default: throw new CoolException("妫�绱㈠簱浣嶅け璐ワ紝璇疯仈绯荤鐞嗗憳"); @@ -143,8 +155,19 @@ // 鐩爣搴撲綅 LocMast locMast = null; - // 闈犺繎鎽嗘斁瑙勫垯 --- 鍚屽ぉ鍚岃鏍肩墿鏂� + boolean inoutEveryday = false; if (!Cools.isEmpty(matNos)) { + for (String matNo : matNos) { + Mat mat = matService.selectByMatnr(matNo); + if (mat.getInoutEveryday() != null && mat.getInoutEveryday()) { + inoutEveryday = true; + break; + } + } + } + + // 闈犺繎鎽嗘斁瑙勫垯 --- 鍚屽ぉ鍚岃鏍肩墿鏂� + if (!Cools.isEmpty(matNos) && matNos.size() == 1) { List<String> locNos = locDetlService.getSameDetl(matNos.get(0), start, end); for (String locNo : locNos) { List<String> groupLoc = Utils.getGroupLoc(locNo); @@ -205,9 +228,17 @@ switch (curRow) { case 1: curRow = 1; + if (null != theCrnNo) { + curRow = 8; + crnNo1 = crnNo1 + 1; + } break; case 2: curRow = 7; + if (null != theCrnNo) { + curRow = 14; + crnNo1 = crnNo1 + 1; + } break; case 3: curRow = 8; @@ -228,9 +259,17 @@ break; case 3: curRow = 15; + if (null != theCrnNo) { + curRow = 8; + crnNo1 = crnNo1 - 1; + } break; case 4: curRow = 21; + if (null != theCrnNo) { + curRow = 14; + crnNo1 = crnNo1 - 1; + } break; default: throw new CoolException("妫�绱㈠簱浣嶅け璐ワ紝璇疯仈绯荤鐞嗗憳"); @@ -273,8 +312,7 @@ // 1.褰撴绱㈠簱鎺掍负娴呭簱浣嶆帓鏃讹紝浼樺厛瀵绘壘褰撳墠搴撴帓鐨勬繁搴撲綅鎺� if (locMast == null) { List<Integer> rows = Utils.getGroupLoc(curRow); - - List<LocMast> locMasts = locMastService.queryFreeLocMast(rows, rows.size(), locTypeDto.getLocType1()); + List<LocMast> locMasts = locMastService.queryFreeLocMast0(rows, rows.size(), locTypeDto.getLocType1(), inoutEveryday); if (!Cools.isEmpty(locMasts)) { Integer innermostRow = Utils.getInnermostRow(locMasts.get(0).getLocNo()); for (LocMast one : locMasts) { @@ -284,7 +322,11 @@ } } } - // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣� +// LocMast locMast0 = locMastService.findOutMost(locMasts.stream().map(LocMast::getLocNo).distinct().collect(Collectors.toList())); +// if (!Cools.isEmpty(locMast0)) { +// locMast = locMast0; +// } + // 鍥犲簱浣嶇Щ杞�侀渶棰勭暀绌哄簱浣� todo:luxiaotao // if (!locMastService.checkEmptyCount(locMast)) { // locMast = null; // } -- Gitblit v1.9.1