From 9764b5879c808da31101eb4e05608233ea59ec53 Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: Sat, 16 Dec 2023 14:30:24 +0800
Subject: [PATCH] RTU
---
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java | 2
ard-work/src/main/java/com/ruoyi/sy/vo/CarVo.java | 2
ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java | 7 +
ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java | 123 ++++++++++++++++++++--------------------
ard-work/src/main/java/com/ruoyi/utils/data/Query.java | 7 --
ard-work/src/main/java/com/ruoyi/sy/vo/RtuVo.java | 2
6 files changed, 73 insertions(+), 70 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
index f24ca1a..92d6ab4 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
@@ -98,6 +98,9 @@
carLockVo.setCar(carVo);
String rtu = carVo.getRtu();
carLockVo.setCarLockList(ardSyCarLockService.carLock(rtu));
+ ArdSyCarRtu ardSyCarRtu = ardSyCarRtuService.one(carId);
+ carVo.setInstallType(ardSyCarRtu.getInstallType());
+ carVo.setUnloadType(ardSyCarRtu.getUnloadType());
return AjaxResult.success(carLockVo);
}
@@ -115,9 +118,9 @@
return Results.succeed("成功添加/修改"+ardSyCarLockService.addUpdLock(locks)+"条数据");
}
- @GetMapping("/onrRtu")
+ @GetMapping("/oneRtu")
@ApiOperation("更改Rtu前查询")
- public Results onrRtu(String carId){
+ public Results oneRtu(String carId){
RtuVo rtuVo = ardSyCarLockService.updRtu(carId);
String usersId = SecurityUtils.getUserId();
ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
diff --git a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
index f360ce8..b53d824 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java
@@ -115,14 +115,6 @@
List<ArdOilWall> ardOilWalls = ardOilWallService.accessAll();
//日期格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- //车速标记
- Boolean stop = true;
- //判断车速
- if(speed>5){
- //mqtt发送既定Rtu状态
- feng(carId,"施封",carRtuService,lockService);
- stop = false;
- }
//如果没有说明车辆未进入装油点,需要匹配所有装油点围栏
if(ardAccessFence==null){
//车辆未进入装油点
@@ -152,14 +144,20 @@
ardAccessFence1.setDrct(drct);
ardAccessFence1.setIsAlarm(0);
ardAccessFenceService.access(ardAccessFence1);
- if(stop){
- //mqtt发送既定Rtu状态
- feng(carId,"装油点",carRtuService,lockService);
- }
+ //mqtt发送既定Rtu状态
+ feng(carId,"装油点",carRtuService,lockService);
break;
}
}
}else {
+ //车速标记
+ Boolean stop = true;
+ //判断车速
+ if(speed>5){
+ //mqtt发送既定Rtu状态
+ feng(carId,"施封",carRtuService,lockService);
+ stop = false;
+ }
//带锁车辆有值优先判断是否为手动添加车辆
if(ardAccessFence.getIsAlarm()==1){
//1为手动添加车辆无需报警信息,更新位置即可
@@ -458,77 +456,78 @@
//1解封
if(fengType==1){
//如果不是解封封状态,则发送施封命令
- if(ardSyCarLocks.get(0).getRelayInfo()!=null){
- if(ardSyCarLocks.get(0).getRelayInfo()==0){
+ if(ardSyCarLocks.get(0).getRelayInfo()==0 || ardSyCarLocks.get(0).getRelayInfo()==null){
// Map<String,Object> map = new HashMap<>();
// map.put("A01", 110000);//导通第一路继电器
// map.put("A02", 110000);//导通第二路继电器
// map.put("res", String.valueOf(System.currentTimeMillis()));
// String mapString = com.alibaba.fastjson.JSON.toJSONString(map);
- String mapString = "{\"A01\":110000,\"A02\":110000,\"res\":\""+String.valueOf(System.currentTimeMillis())+"\"}";
- log.debug("自动解封:"+mapString);
- EmqClient emqClient = new EmqClient(carId+"mqttPublish"+UUID.randomUUID());
- emqClient.connect();
- emqClient.publish(ardSyCarRtu.getTopicPublish(),mapString, QosEnum.QoS2,false);
- log.debug("车辆"+carId+"解封命令发送成功!");
- // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"解封");
- }
+ String mapString = "{\"A01\":110000,\"A02\":110000,\"res\":\""+String.valueOf(System.currentTimeMillis())+"\"}";
+ log.debug("自动解封:"+mapString);
+ EmqClient emqClient = new EmqClient(carId+"mqttPublish"+UUID.randomUUID());
+ emqClient.connect();
+ emqClient.publish(ardSyCarRtu.getTopicPublish(),mapString, QosEnum.QoS2,false);
+ log.debug("车辆"+carId+"解封命令发送成功!");
+ // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"解封");
}
}
+
//0施封
if(fengType==0){
- //锁开关状态
- int lockCloseNum = 0;
- String mapString1 = "{\"A01\":100000,\"A02\":100000,\"res\":\""+String.valueOf(System.currentTimeMillis())+"\"}";
- System.out.println("自动施封:"+mapString1);
- EmqClient emqClient1 = new EmqClient(carId+"mqttPublish"+UUID.randomUUID());
- emqClient1.connect();
- emqClient1.publish(ardSyCarRtu.getTopicPublish(),mapString1, QosEnum.QoS2,false);
- //如果不是施封状态,则发送施封命令
- if(ardSyCarLocks.get(0).getRelayInfo()!=null){
- if(ardSyCarLocks.get(0).getRelayInfo()==1){
- for (int j = 0; j < ardSyCarLocks.size(); j++) {
- ArdSyCarLock ardSyCarLock = ardSyCarLocks.get(j);
- String currents = ardSyCarLock.getCurrents();
- Double currentInfo = ardSyCarLock.getCurrentInfo();
- //电流值为4.0是关锁状态
- if(currentInfo.equals(4.00) || currentInfo.equals(4)){
- lockCloseNum += 1;
- }else {
- String key = "";
- if(currents.equals("C01")){
- key = "D03";
- }else if(currents.equals("C02")){
- key = "D04";
- }
+ if(ardSyCarLocks.get(0).getRelayInfo()==1 || ardSyCarLocks.get(0).getRelayInfo()==null){
+ //锁开关状态
+ int lockCloseNum = 0;
+ String mapString1 = "{\"A01\":100000,\"A02\":100000,\"res\":\""+String.valueOf(System.currentTimeMillis())+"\"}";
+ System.out.println("自动施封:"+mapString1);
+ EmqClient emqClient1 = new EmqClient(carId+"mqttPublish"+UUID.randomUUID());
+ emqClient1.connect();
+ emqClient1.publish(ardSyCarRtu.getTopicPublish(),mapString1, QosEnum.QoS2,false);
+ //如果不是施封状态,则发送施封命令
+ if(ardSyCarLocks.get(0).getRelayInfo()!=null){
+ if(ardSyCarLocks.get(0).getRelayInfo()==1){
+ for (int j = 0; j < ardSyCarLocks.size(); j++) {
+ ArdSyCarLock ardSyCarLock = ardSyCarLocks.get(j);
+ String currents = ardSyCarLock.getCurrents();
+ Double currentInfo = ardSyCarLock.getCurrentInfo();
+ //电流值为4.0是关锁状态
+ if(currentInfo.equals(4.00) || currentInfo.equals(4)){
+ lockCloseNum += 1;
+ }else {
+ String key = "";
+ if(currents.equals("C01")){
+ key = "D03";
+ }else if(currents.equals("C02")){
+ key = "D04";
+ }
// Map<String,Object> map = new HashMap();
// map.put(key, 0.01);
// map.put("res", String.valueOf(System.currentTimeMillis()));
// String mapString = com.alibaba.fastjson.JSON.toJSONString(map);
- String mapString = "{\""+key+"\":0.01,\"res\":\""+String.valueOf(System.currentTimeMillis())+"\"}";
- log.debug("自动关锁:"+mapString);
- EmqClient emqClient = new EmqClient(carId+"mqttPublish"+UUID.randomUUID());
- emqClient.connect();
- emqClient.publish(ardSyCarRtu.getTopicPublish(),mapString, QosEnum.QoS2,false);
- // mqttOnce.publishCar("carId",ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"开锁:"+currents);
- while(true){
- ArdSyCarLock ardSyCarLock1 = lockService.getCurrentInfo(ardSyCarRtu.getId(),currents);
- Double currentInfo1 = ardSyCarLock1.getCurrentInfo();
- if(currentInfo1.equals(4.00) || currentInfo1.equals(4)){
- lockCloseNum +=1;
- break;
+ String mapString = "{\""+key+"\":0.01,\"res\":\""+String.valueOf(System.currentTimeMillis())+"\"}";
+ log.debug("自动关锁:"+mapString);
+ EmqClient emqClient = new EmqClient(carId+"mqttPublish"+UUID.randomUUID());
+ emqClient.connect();
+ emqClient.publish(ardSyCarRtu.getTopicPublish(),mapString, QosEnum.QoS2,false);
+ // mqttOnce.publishCar("carId",ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"开锁:"+currents);
+ while(true){
+ ArdSyCarLock ardSyCarLock1 = lockService.getCurrentInfo(ardSyCarRtu.getId(),currents);
+ Double currentInfo1 = ardSyCarLock1.getCurrentInfo();
+ if(currentInfo1.equals(4.00) || currentInfo1.equals(4)){
+ lockCloseNum +=1;
+ break;
+ }
}
}
}
- }
- if(lockCloseNum == 2){
+ if(lockCloseNum == 2){
// Map<String,Object> map = new HashMap<>();
// map.put("A01", 100000);//断开第一路继电器
// map.put("A02", 100000);//断开第二路继电器
// map.put("res", String.valueOf(System.currentTimeMillis()));
// String mapString = com.alibaba.fastjson.JSON.toJSONString(map);
- log.debug("车辆"+carId+"施封命令发送成功!");
- // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"施封");
+ log.debug("车辆"+carId+"施封命令发送成功!");
+ // mqttOnce.publishCar(carId,ardSyCarRtu.getTopicPublish(),String.valueOf(new JSONObject(map)),"施封");
+ }
}
}
}
diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java
index e2da7e7..c27a0a6 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java
@@ -177,6 +177,8 @@
rtuVo.setRtu(ardSyCar.getReserved1());
rtuVo.setTopicPublish(ardSyCarRtu.getTopicPublish());
rtuVo.setTopicSubscribe(ardSyCarRtu.getTopicSubscribe());
+ rtuVo.setInstallType(ardSyCarRtu.getInstallType());
+ rtuVo.setUnloadType(ardSyCarRtu.getUnloadType());
return rtuVo;
}
diff --git a/ard-work/src/main/java/com/ruoyi/sy/vo/CarVo.java b/ard-work/src/main/java/com/ruoyi/sy/vo/CarVo.java
index 47eba1b..4bee2c3 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/vo/CarVo.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/vo/CarVo.java
@@ -17,4 +17,6 @@
private String deptId;
private String deptName;
private String rtu;
+ private Integer installType; //装油点 0施封 1解封
+ private Integer unloadType; //卸油点 0施封 1解封
}
diff --git a/ard-work/src/main/java/com/ruoyi/sy/vo/RtuVo.java b/ard-work/src/main/java/com/ruoyi/sy/vo/RtuVo.java
index f022ec6..d5c4915 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/vo/RtuVo.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/vo/RtuVo.java
@@ -15,4 +15,6 @@
private String rtu;
private String topicPublish;
private String topicSubscribe;
+ private Integer installType; //装油点 0施封 1解封
+ private Integer unloadType; //卸油点 0施封 1解封
}
diff --git a/ard-work/src/main/java/com/ruoyi/utils/data/Query.java b/ard-work/src/main/java/com/ruoyi/utils/data/Query.java
index eb69b6d..ea4d318 100644
--- a/ard-work/src/main/java/com/ruoyi/utils/data/Query.java
+++ b/ard-work/src/main/java/com/ruoyi/utils/data/Query.java
@@ -70,16 +70,11 @@
rtu_data_yj_8.setZHS(rs.getInt("ZHS"));
dataBridgeList.add(rtu_data_yj_8);
}
+ conn.close();
return dataBridgeList;
} catch (Exception e) {
log.error("设备运行状态查询异常:" + e.getMessage());
return dataBridgeList;
- } finally {
- try {
- conn.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
}
}
}
--
Gitblit v1.9.3