From fdf2903b8944b80877e7df5d0da38f34b5d84ed9 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期一, 04 十二月 2023 15:02:28 +0800
Subject: [PATCH] Merge branch 'tzskasrs-1' of http://47.97.1.152:5880/r/zy-asrs into tzskasrs-1
---
src/main/java/com/zy/common/service/CommonService.java | 86 ++++++++++++++++++++++++++++++------------
1 files changed, 61 insertions(+), 25 deletions(-)
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index e322c8c..1388298 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -202,18 +202,8 @@
}
List<LocMast> locMasts = locMastService.queryFreeLocMast2(locTypeDto.getLocType1(), locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd());
- for (LocMast locMast0 : locMasts) {
- List<String> locNos = locDetlService.getSameDetl(locMast0.getLocNo());
- for (String locNo : locNos) {
- LocMast locMast1 = locMastService.findInnerLoc(locNo);
- if (null != locMast1) {
- //棰勭暀绌哄簱浣�
- if (locMastService.checkEmptyCount(locMast1, 10)) {
- return locMast1;
- }
- }
- }
- }
+ locMast = locFilter(locMasts, matNos,locTypeDto);
+
}
if (locRules.get(0).getKeepGo() == 0) {
@@ -253,20 +243,8 @@
if (locRule == null) {
continue;
}
-
List<LocMast> locMasts = locMastService.queryFreeLocMast2(locTypeDto.getLocType1(), locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd());
- for (LocMast locMast0 : locMasts) {
- List<String> locNos = locDetlService.getSameDetl(locMast0.getLocNo());
- for (String locNo : locNos) {
- LocMast locMast1 = locMastService.findInnerLoc(locNo);
- if (null != locMast1) {
- //棰勭暀绌哄簱浣�
- if (locMastService.checkEmptyCount(locMast1, 10)) {
- return locMast1;
- }
- }
- }
- }
+ locMast = locFilter(locMasts, matNos,locTypeDto);
}
// if (locRules.get(0).getKeepGo() == 0) {
@@ -427,6 +405,64 @@
return locMast;
}
+ /*
+ 搴撳瓨瑙勫垯鎼滅储鍒扮殑搴撲綅纭
+ */
+ private LocMast locFilter(List<LocMast> locMasts,List<String> matNos,LocTypeDto locTypeDto){
+ for (LocMast locMast0 : locMasts) {
+ if(!VersionUtils.checkLocType(locMast0,locTypeDto)){
+ continue;
+ }
+ if (matNos.size() == 1) {
+ //鍗曞搧鐗╂枡
+ if(Cools.isEmpty(Utils.getGroupDeepLoc(locMast0.getLocNo()))){
+ return locMast0;
+ }else{
+ List<String> groupInnerLoc = Utils.getGroupInnerLoc(locMast0.getLocNo());
+ if (Cools.isEmpty(groupInnerLoc)) {
+ return locMast0;
+ }else {
+ //鑾峰彇鏈�娣辩殑搴撲綅
+ String loc = groupInnerLoc.get(groupInnerLoc.size() - 1);
+ LocMast locMast1 = locMastService.selectByLoc(loc);
+ if("O".equals(locMast1.getLocSts())){
+ return locMast1;
+ }else {
+ if(!"F".equals(locMast1.getLocSts())){
+ continue;
+ }
+ List<LocDetl> locDetls = locDetlService.selectByLocNo(loc);
+ if(!Cools.eq(locDetls.get(0).getMatnr(),matNos.get(0))){
+ continue;
+ }
+ for (int i=groupInnerLoc.size()-1; i>=0 ;i--){
+ LocMast locMast2 = locMastService.selectByLoc(groupInnerLoc.get(i));
+ if("O".equals(locMast2.getLocSts())){
+ return locMast2;
+ }else if("F".equals(locMast2.getLocSts())){
+ if(i==0){
+ return locMast1;
+ }else {
+ continue;
+ }
+ }else {
+ break;
+ }
+ }
+ }
+
+ }
+ }
+ }else {
+ if(Cools.isEmpty(Utils.getGroupDeepLoc(locMast0.getLocNo()))){
+ return locMast0;
+ }
+ }
+
+ }
+ return null;
+ }
+
//杩斿洖dto
private StartupDto getLocNoStep6(Integer staDescId, Integer sourceStaNo, LocMast locMast) {
StartupDto startupDto = new StartupDto();
--
Gitblit v1.9.1