From 638392144f32a2346f513c671c4a3bf88a954479 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 17 四月 2024 23:29:51 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/AgvCommonService.java | 104 ++++++++++++++++++++++++++++++++++-----------------
1 files changed, 69 insertions(+), 35 deletions(-)
diff --git a/src/main/java/com/zy/common/service/AgvCommonService.java b/src/main/java/com/zy/common/service/AgvCommonService.java
index 1f21122..b362b5b 100644
--- a/src/main/java/com/zy/common/service/AgvCommonService.java
+++ b/src/main/java/com/zy/common/service/AgvCommonService.java
@@ -29,6 +29,8 @@
private AgvLocMastService agvLocMastService;
@Autowired
private MatService matService;
+ @Autowired
+ private LocRuleService locRuleService;
public int getWorkNo(Integer wrkMk) {
AgvWrkLastno wrkLastno = agvWrkLastnoService.selectById(wrkMk);
@@ -69,44 +71,46 @@
* 妫�绱㈠簱浣嶅彿
* @return locNo 妫�绱㈠埌鐨勫簱浣嶅彿
*/
- public AgvLocMast getLocNo(List<AgvWaitPakin> agvWaitPakinList, int floor) {
+ public AgvLocMast getLocNo(int type) {
// 鐩爣搴撲綅
AgvLocMast locMast = null;
+// if(Cools.isEmpty(agvWaitPakinList)){
+// return getLocNoRule(type); // 1. 闅忔満搴撲綅
+// }
- //搴撲綅瑙勫垯
- if(!Cools.isEmpty(agvWaitPakinList)){
- locMast = getLocByLocRule(agvWaitPakinList.get(0),floor);
- if(!Cools.isEmpty(locMast)){
- return locMast;
- }
- }
-
- // 闈犺繎鎽嗘斁瑙勫垯 --- 鐩稿悓璁㈠崟鍙�, 鍚屽ぉ鍚岃鏍肩墿鏂�
- locMast = getLocByProximityRule();
- if (locMast != null) {
- //鎵惧埌搴撲綅锛岃繑鍥瀌to
- //return getLocNoStep6(staDescId, sourceStaNo, locMast);//杩斿洖dto
- }
-
- //鏍规嵁鐗╂枡棰戠巼鎼滅储搴撲綅锛岄鐜囬珮鍒欐悳绱㈢缂撳瓨璐ф灦鏈�杩戝簱浣嶏紝棰戠巼浣庡垯鎼滅储鏈�杩滃簱浣�
- Mat mat = matService.selectByMatnr(agvWaitPakinList.get(0).getMatnr());
- if(true){
-
- }else {
-
- }
-
-//
-// // 闈犺繎鎽嗘斁瑙勫垯 --- 绌烘墭
-// locMast = getLocNoStep4(staDescId, locTypeDto);
-// if (locMast != null) {
-// //鎵惧埌搴撲綅锛岃繑鍥瀌to
-// return getLocNoStep6(staDescId, sourceStaNo, locMast);//杩斿洖dto
+// //搴撲綅瑙勫垯
+// locMast = getLocByLocRule(agvWaitPakinList.get(0),floor); // 2. 鎸夊簱浣嶈鍒欐悳绱�
+// if(!Cools.isEmpty(locMast)){
+// return locMast;
// }
//
-// // 濡傛灉娌℃湁鐩歌繎鐗╂枡锛屽垯鎸夎鍒欒疆璇㈣揣鏋�
+//
+// //搴撲綅缂栫爜瑙勫垯
+// locMast = getLocByLocCodeRule(agvWaitPakinList.get(0),floor);
+// if(!Cools.isEmpty(locMast)){
+// return locMast;
+// }
+//
+// // 闈犺繎鎽嗘斁瑙勫垯 --- 鐩稿悓璁㈠崟鍙�, 鍚屽ぉ鍚岃鏍肩墿鏂�
+// locMast = getLocByProximityRule();
+// if (locMast != null) {
+// //鎵惧埌搴撲綅锛岃繑鍥瀌to
+// //return getLocNoStep6(staDescId, sourceStaNo, locMast);//杩斿洖dto
+// }
+//
+// //鏍规嵁鐗╂枡棰戠巼鎼滅储搴撲綅锛岄鐜囬珮鍒欐悳绱㈢缂撳瓨璐ф灦鏈�杩戝簱浣嶏紝棰戠巼浣庡垯鎼滅储鏈�杩滃簱浣�
+// Mat mat = matService.selectByMatnr(agvWaitPakinList.get(0).getMatnr());
+// if(Cools.isEmpty(mat.getBeBatch())){
+// mat.setBeBatch(0);
+// }
+// locMast = getLocByFre(mat.getBeBatch(), floor);
+// if (locMast != null) {
+// return locMast;
+// }
+
+
// 寮�濮嬫煡鎵惧簱浣� ==============================>>
- locMast = getLocNoRule(floor);
+ locMast = getLocNoRule(type);
if (locMast != null) {
return locMast;
}
@@ -145,6 +149,37 @@
return agvLocMast;
}
}
+
+ return null;
+ }
+
+ /*
+ 搴撲綅瑙勫垯鏌ユ壘
+ */
+ private AgvLocMast getLocByLocCodeRule(AgvWaitPakin agvWaitPakin, int floor) {
+ /*if(Cools.isEmpty(agvWaitPakin.getBrand())){
+ return null;
+ }
+
+ //搴撳尯
+ String other = "agv-" + floor;
+ List<LocRule> locRules = locRuleService.findCode(agvWaitPakin.getMatnr(), other);
+ if(Cools.isEmpty(locRules)){
+ return null;
+ }
+
+ for (LocRule agvLocRule : locRules) {
+ EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+ wrapper.between("row1",agvLocRule.getRowBeg(),agvLocRule.getRowEnd())
+ .between("bay1",agvLocRule.getBayBeg(),agvLocRule.getBayEnd())
+ .between("lev1",agvLocRule.getLevBeg(),agvLocRule.getLevEnd())
+ .eq("floor",floor)
+ .eq("loc_sts","O");
+ AgvLocMast agvLocMast = agvLocMastService.selectOne(wrapper);
+ if(!Cools.isEmpty(agvLocMast)){
+ return agvLocMast;
+ }
+ }*/
return null;
}
@@ -192,11 +227,10 @@
}
//闅忔満鍙栦竴涓揣浣�
- private AgvLocMast getLocNoRule(int floor){
+ private AgvLocMast getLocNoRule(int type){
return agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>()
- .eq("floor",floor)
.eq("loc_sts","O")
- .eq(false,"loc_type2",1));
+ .eq("loc_type1",type));
}
--
Gitblit v1.9.1