From ff93a75e1ede2f3a66de84efd822cfa94b0ac821 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: Thu, 01 Feb 2024 15:59:59 +0800
Subject: [PATCH] 三一车辆追踪修改提交
---
ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java | 4 ++--
ard-work/src/main/java/com/ruoyi/sy/gps31/PushClientImplPosition.java | 4 ++--
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java | 14 ++++++++++++++
3 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
index 90f4213..d18da11 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarController.java
@@ -113,8 +113,8 @@
ardSyCarService.sendArdSyCarPosition();
}
};
- carPositionTimer.scheduleAtFixedRate(carPositionTask,date,3*1000);//启用
- //车辆实时位置线程
+ //carPositionTimer.scheduleAtFixedRate(carPositionTask,date,3*1000);//弃用
+ //车辆实时报警线程
PushClientImplAlarm pushClientImplAlarm = new PushClientImplAlarm(ip,ardSyUserList.get(0).getUserId(),ardSyUserList.get(0).getPassword());
Thread pushClientImplAlarmThread = new Thread(pushClientImplAlarm);
pushClientImplAlarmThread.start();
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 c01a4fe..da4c163 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
@@ -372,7 +372,7 @@
}
//清淤结束------------
- gpsMap.putAll(result);
+ /*gpsMap.putAll(result);
String ancestors = (String) gpsMap.get("ancestors");//获取父级部门
String[] ancestorsArray = ancestors.split(",");
if(ancestorsArray.length == 1){//最高级部门
@@ -408,7 +408,7 @@
deptMapp.put((String)gpsMap.get("carId"),gpsMap);
}
}
- }
+ }*/
//存入用户容器
if(PositionContainer.getUserPositionMap().size() != 0){
for(String userId : PositionContainer.getUserPositionMap().keySet()){
diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
index aebc0a0..70c35e3 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarServiceImpl.java
@@ -970,6 +970,13 @@
sessionId = key;
}
}
+ if(sessionId.equals("")){//用户离线释放资源
+ if (userCarTimerMap.get(usersId) != null) {
+ userCarTimerMap.get(usersId).cancel();
+ userCarTimerMap.remove(usersId);
+ PositionContainer.getUserPositionMap().remove(usersId);
+ }
+ }
WebSocketUtils.sendMessage(ONLINE_USER_SESSIONS.get(sessionId), JSON.toJSONString(data));
}
}
@@ -999,6 +1006,13 @@
sessionId = key;
}
}
+ if(sessionId.equals("")){//用户离线释放资源
+ if (userCarTimerMap.get(usersId) != null) {
+ userCarTimerMap.get(usersId).cancel();
+ userCarTimerMap.remove(usersId);
+ PositionContainer.getUserPositionMap().remove(usersId);
+ }
+ }
WebSocketUtils.sendMessage(ONLINE_USER_SESSIONS.get(sessionId), JSON.toJSONString(data));
}
}
--
Gitblit v1.9.3