From 24bc9aa5888c7b98cf0a7d1bf05ec6c5624d3719 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期一, 03 三月 2025 16:02:29 +0800
Subject: [PATCH] 四期
---
src/main/java/com/zy/common/service/AgvCommonService.java | 52 +++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 49 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/zy/common/service/AgvCommonService.java b/src/main/java/com/zy/common/service/AgvCommonService.java
index c7903e4..04720a4 100644
--- a/src/main/java/com/zy/common/service/AgvCommonService.java
+++ b/src/main/java/com/zy/common/service/AgvCommonService.java
@@ -128,7 +128,11 @@
// locMast = locUtils.getLocNoRuleByFloor(type, floor, isEmpty, 2);
// } else {
// //涓嶅姩杩欎釜閫昏緫
- locMast = getLocNoRule(type, floor, isEmpty, isCurrLev);
+ if (type == 6) {
+ locMast = locUtils.getLocNoRuleByFloor(type, floor);
+ } else {
+ locMast = getLocNoRule(type, floor, isEmpty, isCurrLev);
+ }
// }
if (locMast != null) {
return locMast;
@@ -144,7 +148,7 @@
/**
* 搴撲綅瑙勫垯鏌ユ壘
*/
- public AgvLocMast getLocByLocRule(int type, int floor, String factory) {
+ public synchronized AgvLocMast getLocByLocRule(int type, int floor, String factory, boolean flag) {
try {
EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
@@ -157,7 +161,7 @@
//B鏄簩鍘傦紝G鏄笁鍘�
switch (factory) {
case "B":
- wrapper.eq("floor", floor).orderBy("lev1", false);
+ wrapper.eq("floor", floor).orderBy("lev1", false).orderBy("row1", flag);
break;
case "G":
wrapper.eq("floor", floor).orderBy("lev1", true);
@@ -179,6 +183,8 @@
} catch (Exception e) {
throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
}
+
+
}
/**
@@ -223,6 +229,28 @@
return null;
} catch (Exception e) {
throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+ }
+ }
+
+ /*
+搴撲綅瑙勫垯鏌ユ壘
+ */
+ public AgvLocMast getLocByFloor(int type, int floor) {
+ try {
+ EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_sts", "O").eq("loc_type1", type);
+ wrapper.eq("floor", floor).orderBy("lev1", false);
+
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper);
+ for (AgvLocMast agvLocMast : agvLocMasts) {
+ AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
+ if (agvLocMast1.getLocSts().equals("O")) {
+ return agvLocMast1;
+ }
+ }
+ return null;
+ } catch (Exception e) {
+ return null;
}
}
@@ -299,6 +327,24 @@
throw new CoolException("鎼滅储搴撲綅鏃讹紝妤煎眰鍑洪敊銆�");
}
+ public AgvLocMast getLocNoOnXiSuer(int type, int floor) {
+ EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_sts", "O").eq("loc_type1", type);
+ wrapper.eq("floor", floor).orderBy("lev1", false);
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper);
+ if (Cools.isEmpty(agvLocMasts)) {
+ return null;
+ } else {
+ for (AgvLocMast agvLocMast : agvLocMasts) {
+ AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
+ if (agvLocMast1.getLocSts().equals("O")) {
+ return agvLocMast1;
+ }
+ }
+ }
+ return null;
+ }
+
//闅忔満鍙栦竴涓揣浣�
private AgvLocMast getLocNoRule(int type, int floor, boolean isEmpty, boolean isCurrLev) {
--
Gitblit v1.9.1