From 914289059916815f90300965da55d9522f0abdc4 Mon Sep 17 00:00:00 2001 From: TQS <56479841@qq.com> Date: 星期一, 30 一月 2023 11:54:12 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/bfasrs' into bfasrs --- src/main/java/com/zy/common/service/CommonService.java | 38 ++++++++++++++++++++++++++++++-------- 1 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 74c5e4b..e4f3864 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -57,6 +57,8 @@ private SlaveProperties slaveProperties; @Autowired private MatService matService; + @Autowired + private LocRuleService locRuleService; /** * 鐢熸垚宸ヤ綔鍙� @@ -310,14 +312,34 @@ // 1.褰撴绱㈠簱鎺掍负娴呭簱浣嶆帓鏃讹紝浼樺厛瀵绘壘褰撳墠搴撴帓鐨勬繁搴撲綅鎺� if (locMast == null) { - List<Integer> rows = Utils.getGroupLoc(curRow); - 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) { - if (one.getRow1().equals(innermostRow)) { - locMast = one; - break; + + // 搴撳尯閿佸畾 + LocRule locRule = locRuleService.find(Cools.isEmpty(matNos) ? null : matNos.get(0), null); + if (!Cools.isEmpty(locRule)) { + List<Integer> rows = Utils.getGroupLoc(locRule.getRowBeg()); + List<LocMast> locMasts = locMastService.queryFreeLocMast1(rows, rows.size(), locTypeDto.getLocType1(), inoutEveryday + , locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd()); + if (!Cools.isEmpty(locMasts)) { + Integer innermostRow = Utils.getInnermostRow(locMasts.get(0).getLocNo()); + for (LocMast one : locMasts) { + if (one.getRow1().equals(innermostRow)) { + locMast = one; + break; + } + } + } + } + + if (locMast == null) { + List<Integer> rows = Utils.getGroupLoc(curRow); + 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) { + if (one.getRow1().equals(innermostRow)) { + locMast = one; + break; + } } } } -- Gitblit v1.9.1