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 | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 58 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/common/service/AgvCommonService.java b/src/main/java/com/zy/common/service/AgvCommonService.java index 7fc5a4e..aba0aae 100644 --- a/src/main/java/com/zy/common/service/AgvCommonService.java +++ b/src/main/java/com/zy/common/service/AgvCommonService.java @@ -255,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")) { @@ -405,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