From c65db22f67af8018ae7105ea00d8743e42835e13 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期六, 29 三月 2025 15:52:09 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/common/service/AgvCommonService.java | 73 +++++++++++++++++++++++++++++++++++-
1 files changed, 70 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 a24d141..aba0aae 100644
--- a/src/main/java/com/zy/common/service/AgvCommonService.java
+++ b/src/main/java/com/zy/common/service/AgvCommonService.java
@@ -178,14 +178,23 @@
num = Integer.parseInt(config.getValue());
}
agvLocMasts = agvLocMastService.selectList(wrapper);
+ int er = 0;
for (AgvLocMast agvLocMast : agvLocMasts) {
-
+ if (agvLocMast.getLev1() == 2) {
+ er++;
+ }
}
-
for (AgvLocMast agvLocMast : agvLocMasts) {
AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
if (agvLocMast1.getLocSts().equals("O")) {
- return agvLocMast1;
+ if (agvLocMast1.getLev1() == 2) {
+ if (er > num) {
+ return agvLocMast1;
+ }
+ } else {
+ return agvLocMast1;
+ }
+
}
}
throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
@@ -246,8 +255,41 @@
try {
EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
wrapper.eq("loc_sts", "O").eq("loc_type1", type);
+ wrapper.eq("floor", floor).eq("lev1", lev1).orderBy("bay1", 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;
+ }
+ }
+ throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+ } catch (Exception e) {
+ throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+ }
+ }
+
+ /**
+ * 搴撲綅瑙勫垯鏌ユ壘
+ */
+ public AgvLocMast getLocByLocRule2(int type, int floor, int lev1) {
+
+ try {
+ EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_sts", "O").eq("loc_type1", type);
wrapper.eq("floor", floor).eq("lev1", lev1);
List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper);
+ if (lev1 == 2) {
+ int num = 20;
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "LOC_3_NUM"));
+ if (config != null && !Cools.isEmpty(config.getValue())) {
+ num = Integer.parseInt(config.getValue());
+ }
+ int er = agvLocMasts.size();
+ if (er < num) {
+ throw new CoolException("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�20");
+ }
+ }
for (AgvLocMast agvLocMast : agvLocMasts) {
AgvLocMast agvLocMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocMast.getLocNo()));
if (agvLocMast1.getLocSts().equals("O")) {
@@ -396,6 +438,31 @@
return null;
}
+ public AgvLocMast getLocNoOnXiSuer20(int type, int floor) {
+ EntityWrapper<AgvLocMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_sts", "O").eq("loc_type1", type);
+ wrapper.eq("floor", floor).eq("lev1", 2);
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(wrapper);
+ if (Cools.isEmpty(agvLocMasts)) {
+ return null;
+ } else {
+ int num = 15;
+ Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "LOC_6_NUM"));
+ if (config != null && !Cools.isEmpty(config.getValue())) {
+ num = Integer.parseInt(config.getValue());
+ }
+ if (agvLocMasts.size() > num) {
+ 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