From 1af3b14449eb33792e606185c55643bca53efbb7 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期三, 07 六月 2023 16:50:52 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/CommonService.java | 83 +++++++++++++++++++++++++++++++----------
1 files changed, 62 insertions(+), 21 deletions(-)
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 32bdf6d..38c15a0 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.Cools;
import com.core.exception.CoolException;
+import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
import com.zy.asrs.entity.*;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.Utils;
@@ -156,36 +157,21 @@
// 鐩爣搴撲綅
LocMast locMast = null;
- if (!Cools.isEmpty(matNos)) {
- for (String matNo : matNos) {
- Mat mat = matService.selectByMatnr(matNo);
- if (matType == null) {
- matType = mat.getMatType();
- }
- if (matType != mat.getMatType()) {
- throw new CoolException("娣锋斁鐗╂枡绫诲瀷涓嶄竴鑷�");
- }
- }
-
- if (matNos.size() > 1 && matType == 1) {
- //鐗╂枡涓哄崟鍝佺被鍨嬶紝涓旂墿鏂欑绫昏秴杩�1(瀹為檯涓洪珮棰戞贩鏀�)锛屽垯绂佹鍏ュ簱
- throw new CoolException("鐗╂枡绫诲瀷鍜屽疄闄呯绫讳笉涓�鑷�");
- }
- }
+ boolean sign = false;
// 闈犺繎鎽嗘斁瑙勫垯 --- 绌烘墭
locMast = getLocNoStep1(staDescId, locTypeDto, start, end);
if (locMast != null) {
//鎵惧埌搴撲綅锛岃繑鍥瀌to
- return getLocNoFinalStep(staDescId, sourceStaNo, locMast);//杩斿洖dto
+ sign=true;
}
- if (matType != null) {
+ if (!sign && matType != null) {
if (matType == 1) {//鍗曞搧绫诲瀷鍏ュ簱
locMast = getLocNoStep2(locTypeDto, matNos, rows, crnNos);
if (locMast != null) {
//鎵惧埌搴撲綅锛岃繑鍥瀌to
- return getLocNoFinalStep(staDescId, sourceStaNo, locMast);//杩斿洖dto
+ sign=true;
}
} else if (matType == 2) {//楂橀绫诲瀷鍏ユ渶澶栦晶搴撲綅
locMast = getLocNoStep3(locTypeDto, crnNos);
@@ -195,16 +181,68 @@
}
if (locMast != null) {
//鎵惧埌搴撲綅锛岃繑鍥瀌to
- return getLocNoFinalStep(staDescId, sourceStaNo, locMast);//杩斿洖dto
+ sign=true;
}
} else if (matType == 3) {//浣庨娣锋斁绫诲瀷
locMast = getLocNoStep4(locTypeDto, crnNos);
if (locMast != null) {
//鎵惧埌搴撲綅锛岃繑鍥瀌to
- return getLocNoFinalStep(staDescId, sourceStaNo, locMast);//杩斿洖dto
+ sign=true;
}
}
}
+
+
+
+ if (!sign){
+ //----------------2023.06.02鍏煎浠g爜锛屽悗鏈熷簱浣嶈鍒欑鍚堣姹傚悗鍙垹闄�------------------------
+ //濡傛灉浠ヤ笂閮芥壘涓嶅埌搴撲綅锛屽垯寮哄埗鎼滅储1銆�2鍫嗗灈鏈虹┖搴撲綅杩涜鍏ュ簱锛屼繚闅�3鍙峰爢鍨涙満搴撲綅閮芥槸绗﹀悎瑕佹眰鐨�
+ EntityWrapper<LocMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_type1", locTypeDto.getLocType1());
+ wrapper.in("crn_no", "2");
+ wrapper.eq("loc_sts", "O");
+ List<LocMast> locMasts = locMastService.selectList(wrapper);
+ for (LocMast mast : locMasts) {
+ //妫�娴嬪綋鍓嶅簱浣嶅唴渚у叾浠栧簱浣嶆槸鍚︿负D銆丗銆乆
+ if (Utils.checkInsideLocIsDFX(mast.getLocNo())) {
+ //鍐呬晶鍏朵粬搴撲綅涓嶆槸D銆丗銆乆銆備笉鑳介�夊彇璇ュ簱浣�
+ continue;
+ }
+ if(sourceStaNo==103 && mast.getRow1()>7)
+ {
+ continue;
+ }
+ if(sourceStaNo==203 && mast.getRow1()<8)
+ {
+ continue;
+ }
+ //鎵惧埌搴撲綅锛岃繑鍥瀌to
+ locMast=mast;
+ sign = true;
+ }
+ }
+
+ if (sign){
+ //3鍙峰彲浠ュ叆搴撳墠蹇呴』鎵撳紑鎺у埗
+ if (!Cools.isEmpty(matNos) && locMast.getCrnNo()==3) {
+ for (String matNo : matNos) {
+ Mat mat = matService.selectByMatnr(matNo);
+ if (matType == null) {
+ matType = mat.getMatType();
+ }
+ if (!matType.equals(mat.getMatType())) {
+ throw new CoolException("娣锋斁鐗╂枡绫诲瀷涓嶄竴鑷�");
+ }
+ }
+
+ if (matNos.size() > 1 && matType == 1) {
+ //鐗╂枡涓哄崟鍝佺被鍨嬶紝涓旂墿鏂欑绫昏秴杩�1(瀹為檯涓洪珮棰戞贩鏀�)锛屽垯绂佹鍏ュ簱
+ throw new CoolException("鐗╂枡绫诲瀷鍜屽疄闄呯绫讳笉涓�鑷�");
+ }
+ }
+ return getLocNoFinalStep(staDescId, sourceStaNo, locMast);//杩斿洖dto
+ }
+ //----------------2023.06.02鍏煎浠g爜end---------------------
throw new CoolException("妫�绱㈠簱浣嶅け璐ワ紝璇疯仈绯荤鐞嗗憳");
}
@@ -333,6 +371,9 @@
//闅忔満鍙敤鍫嗗灈鏈哄彿
Integer randomCrnNo = Utils.getRandomCrnNo(crnNos, locTypeDto.getLocType1());
+ if (randomCrnNo == null) {
+ return locMast;
+ }
ArrayList<Integer> randomCrnNos = new ArrayList<>();
randomCrnNos.add(randomCrnNo);
--
Gitblit v1.9.1