From 52433e1e316923c8fc26e2742e9943897c9271e7 Mon Sep 17 00:00:00 2001
From: tqs <56479841@qq.com>
Date: 星期五, 31 五月 2024 08:49:26 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/service/AgvCommonService.java | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 110 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/zy/common/service/AgvCommonService.java b/src/main/java/com/zy/common/service/AgvCommonService.java
index 8c7f9f1..f756a9a 100644
--- a/src/main/java/com/zy/common/service/AgvCommonService.java
+++ b/src/main/java/com/zy/common/service/AgvCommonService.java
@@ -31,6 +31,8 @@
private MatService matService;
@Autowired
private LocRuleService locRuleService;
+ @Autowired
+ AgvBasDevpService agvBasDevpService;
public int getWorkNo(Integer wrkMk) {
AgvWrkLastno wrkLastno = agvWrkLastnoService.selectById(wrkMk);
@@ -71,7 +73,7 @@
* 妫�绱㈠簱浣嶅彿
* @return locNo 妫�绱㈠埌鐨勫簱浣嶅彿
*/
- public AgvLocMast getLocNo(int type) {
+ public AgvLocMast getLocNo(int type, int floor) {
// 鐩爣搴撲綅
AgvLocMast locMast = null;
// if(Cools.isEmpty(agvWaitPakinList)){
@@ -109,14 +111,18 @@
// }
- // 寮�濮嬫煡鎵惧簱浣� ==============================>>
- locMast = getLocNoRule(type);
- if (locMast != null) {
- return locMast;
+ try{
+ // 寮�濮嬫煡鎵惧簱浣� ==============================>>
+ locMast = getLocNoRule(type,floor);
+ if (locMast != null) {
+ return locMast;
+ }
+ }catch (Exception e){
+ throw new CoolException("妤煎眰鍙凤細"+floor+"锛涜妤煎眰娌℃湁绌哄簱浣�===>"+e.getMessage());
}
//鎵句笉鍒板簱浣嶏紝鎶涘嚭寮傚父
- throw new CoolException("璇ユゼ灞傛病鏈夌┖搴撲綅");
+ throw new CoolException("妤煎眰鍙凤細"+floor+"锛涜妤煎眰娌℃湁绌哄簱浣�");
}
/*
@@ -227,11 +233,105 @@
}
//闅忔満鍙栦竴涓揣浣�
- private AgvLocMast getLocNoRule(int type){
- return agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>()
- .eq("loc_sts","O")
- .eq(false,"loc_type1",type));
+ private AgvLocMast getLocNoRule(int type,int floor){
+ try{
+ List<AgvLocMast> agvLocMasts = agvLocMastService.selectList(new EntityWrapper<AgvLocMast>()
+ .eq("loc_sts", "O")
+ .eq("floor", floor)
+ .eq("loc_type1", type));
+ 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("鎼滅储搴撲綅鏃讹紝鏈壘鍒板彲鍏ュ簱搴撲綅銆�");
+ }
+ }
+ /**
+ * 妫�绱㈠簱浣嶅彿
+ * @return locNo 妫�绱㈠埌鐨勫簱浣嶅彿
+ */
+ public AgvBasDevp getDevpNo(int type, int floor) {
+ // 鐩爣搴撲綅
+ AgvBasDevp basDevp = null;
+
+ // 寮�濮嬫煡鎵惧簱浣� ==============================>>
+ basDevp = getDevpNoRule(type,floor);
+ if (basDevp != null) {
+ return basDevp;
+ }
+
+ //鎵句笉鍒板簱浣嶏紝鎶涘嚭寮傚父
+ throw new CoolException("妤煎眰鍙凤細"+floor+"锛涜妤煎眰娌℃湁绌烘帴椹充綅");
}
+ /**
+ * 妫�绱㈠簱浣嶅彿
+ * @return locNo 妫�绱㈣嚜鍔ㄦ帴椹充綅
+ */
+ public AgvBasDevp getDevpNo(int type, int floor, String auto) {
+ // 鐩爣搴撲綅
+ AgvBasDevp basDevp = null;
+
+ // 寮�濮嬫煡鎵惧簱浣� ==============================>>
+ basDevp = getDevpNoAuto(type,floor,auto);
+ if (basDevp != null) {
+ return basDevp;
+ }
+
+ //鎵句笉鍒板簱浣嶏紝鎶涘嚭寮傚父
+ throw new CoolException("妤煎眰鍙凤細"+floor+"锛涜妤煎眰娌℃湁绌烘帴椹充綅");
+ }
+
+ /**
+ * 妫�绱㈠簱浣嶅彿
+ * @return locNo 妫�绱㈠彲鍏ユ帴椹充綅
+ */
+ public AgvBasDevp getDevpNo(int type, int floor, String auto ,String inEable) {
+ // 鐩爣搴撲綅
+ AgvBasDevp basDevp = null;
+
+ // 寮�濮嬫煡鎵惧簱浣� ==============================>>
+ basDevp = getDevpNoInEable(type,floor,inEable);
+ if (basDevp != null) {
+ return basDevp;
+ }
+
+ //鎵句笉鍒板簱浣嶏紝鎶涘嚭寮傚父
+ return basDevp;
+ }
+
+ //闅忔満鍙栦竴涓揣浣�
+ private AgvBasDevp getDevpNoRule(int type,int floor){
+ return agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>()
+ .eq("loc_sts","O")
+ .eq("floor",floor)
+ .eq("loc_type1",type)
+ .like("dev_no","DB"));
+ }
+
+ //闅忔満鍙栦竴涓揣浣�
+ private AgvBasDevp getDevpNoAuto(int type,int floor,String auto){
+ return agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>()
+ .eq("loc_sts","O")
+ .eq("floor",floor)
+ .eq("loc_type1",type)
+ .eq("autoing",auto)
+ .like("dev_no","DB"));
+ }
+
+ //闅忔満鍙栦竴涓揣浣�
+ private AgvBasDevp getDevpNoInEable(int type,int floor,String inEable){
+ return agvBasDevpService.selectOne(new EntityWrapper<AgvBasDevp>()
+ .eq("loc_sts","O")
+ .eq("floor",floor)
+ .eq("loc_type1",type)
+ .eq("in_enable",inEable)
+ .like("dev_no","DB"));
+ }
+
}
--
Gitblit v1.9.1