From b1f84ea56417d58d37efb92a00a0a848bfc9b3d2 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期四, 15 一月 2026 11:15:15 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/CommonService.java | 91 ++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 85 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index d7a29de..140eacd 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -188,6 +188,7 @@
//鎼滅储婊℃墭鐩樺簱浣�
public LocMast searchMaxPallet(FindLocNoAttributeVo findLocNoAttributeVo, LocTypeDto locTypeDto){
LocMast targetLocMast = null;
+ //鏌ヨ鐩稿悓鐗╂枡
List<String> locNos = locDetlService.getSameDetlList(findLocNoAttributeVo.getMatnr());
for (String locNo : locNos) {
//鑾峰彇閫氶亾缁�
@@ -214,14 +215,19 @@
//鐩歌繎鐗╂枡鍖归厤澶辫触锛屾悳绱㈠彲鐢ㄧ┖搴撲綅缁�
//鑾峰彇璁惧妤煎眰
- List<Integer> levList = basCrnpService.getLevList();
- Collections.shuffle(levList);
+// List<Integer> levList = basCrnpService.getLevList();
+// Collections.shuffle(levList);
List<Integer> locLevList = locMastService.getLevList();
- levList.addAll(locLevList);
+// levList.addAll(locLevList);
- for (Integer lev : levList) {
- List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "O").eq("lev1", lev).orderBy("bay1", true));
+ for (Integer lev : locLevList) {
+ List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+ .eq("loc_sts", "O")
+ .eq("lev1", lev)
+ .eq("loc_type1",locTypeDto.getLocType1())
+ .orderBy("bay1", true)
+ .orderBy("row1",true));
for (LocMast locMast : locMasts) {
String locNo = locMast.getLocNo();
//鑾峰彇閫氶亾缁�
@@ -265,7 +271,80 @@
//鎼滅储绌烘墭鐩樺簱浣�
public LocMast searchEmptyPallet(LocTypeDto locTypeDto){
- return new LocMast();
+ LocMast targetLocMast = null;
+ List<LocMast> locMastsD = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D"));
+ for (LocMast locMast : locMastsD) {
+ String locNo = locMast.getLocNo();
+ //鑾峰彇閫氶亾缁�
+ List<Integer> locGroupDesc = Utils.getLocGroupDesc(slaveProperties, locNo);
+ for (Integer row : locGroupDesc) {
+ String deepLocNo = Utils.getLocNo(row, Utils.getBay(locNo), Utils.getLev(locNo));
+ LocMast deepLoc = locMastService.selectById(deepLocNo);
+ if (deepLoc == null){
+ continue;
+ }
+
+ if (deepLoc.getLocSts().equals("D")){
+ continue;
+ }else if (deepLoc.getLocSts().equals("O")){
+ targetLocMast = deepLoc;
+ break;
+ }else {
+ break;
+ }
+ }
+ }
+
+ if (targetLocMast == null){
+ //鑾峰彇璁惧妤煎眰
+// List<Integer> levList = basCrnpService.getLevList();
+// Collections.shuffle(levList);
+
+ List<Integer> locLevList = locMastService.getLevList();
+// levList.addAll(locLevList);
+
+ for (Integer lev : locLevList) {
+ //鐩歌繎鐗╂枡鍖归厤澶辫触锛屾悳绱㈠彲鐢ㄧ┖搴撲綅缁�
+ List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "O").eq("lev1", lev).orderBy("bay1", true).orderBy("row1",true));
+ for (LocMast locMast : locMasts) {
+ String locNo = locMast.getLocNo();
+ //鑾峰彇閫氶亾缁�
+ List<Integer> locGroupDesc = Utils.getLocGroupDesc(slaveProperties, locNo);
+
+ boolean flag = true;
+ for (Integer row : locGroupDesc) {
+ String deepLocNo = Utils.getLocNo(row, Utils.getBay(locNo), Utils.getLev(locNo));
+ LocMast deepLoc = locMastService.selectById(deepLocNo);
+ if (deepLoc == null){
+ continue;
+ }
+
+ if (!deepLoc.getLocSts().equals("O")){
+ flag = false;
+ break;
+ }
+ }
+
+ if (flag){
+ for (Integer row : locGroupDesc) {
+ String deepLocNo = Utils.getLocNo(row, Utils.getBay(locNo), Utils.getLev(locNo));
+ LocMast deepLoc = locMastService.selectById(deepLocNo);
+ if (deepLoc == null){
+ continue;
+ }
+
+ targetLocMast = deepLoc;
+ break;
+ }
+ break;
+ }
+ }
+ if (targetLocMast != null){
+ break;
+ }
+ }
+ }
+ return targetLocMast;
}
/**
--
Gitblit v1.9.1