From 96ca0ff98704ac35546a120fea0224ac4373a7ed Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期二, 10 九月 2024 15:42:17 +0800
Subject: [PATCH] 清理redis中的离线次数定时任务

---
 ycl-common/src/main/java/constant/RedisConstant.java           |    2 +-
 ycl-server/src/main/java/com/ycl/task/ClearRedisTask.java      |   28 ++++++++++++++++++++++++++++
 ycl-server/src/main/java/com/ycl/thread/OnlineCheckThread.java |    4 ++--
 3 files changed, 31 insertions(+), 3 deletions(-)

diff --git a/ycl-common/src/main/java/constant/RedisConstant.java b/ycl-common/src/main/java/constant/RedisConstant.java
index b6a9361..6e66eb4 100644
--- a/ycl-common/src/main/java/constant/RedisConstant.java
+++ b/ycl-common/src/main/java/constant/RedisConstant.java
@@ -8,6 +8,6 @@
     public final static String Check_Face_ViewConnect = "FaceViewConnectNoData";
 
     /** 鐐逛綅鍦ㄧ嚎锛宧ash鐨刱ey */
-    public final static String ONLINE_PREFIX = "ONLINE_";
+    public final static String ONLINE_KEY = "ONLINE_";
 
 }
diff --git a/ycl-server/src/main/java/com/ycl/task/ClearRedisTask.java b/ycl-server/src/main/java/com/ycl/task/ClearRedisTask.java
new file mode 100644
index 0000000..37b16cd
--- /dev/null
+++ b/ycl-server/src/main/java/com/ycl/task/ClearRedisTask.java
@@ -0,0 +1,28 @@
+package com.ycl.task;
+
+import constant.RedisConstant;
+import lombok.RequiredArgsConstructor;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Component;
+
+/**
+ * 瀹氭椂娓呯悊redis涓殑鏁版嵁
+ *
+ * @author锛歺p
+ * @date锛�2024/9/10 15:26
+ */
+@RequiredArgsConstructor
+@Component("clearRedisTask")
+public class ClearRedisTask {
+
+    private final RedisTemplate redisTemplate;
+
+    /**
+     * 娓呴櫎鍦ㄧ嚎鐩戞祴鐨剅edis璁$绾挎鏁�
+     *
+     */
+    public void clearOnlineData() {
+        redisTemplate.delete(RedisConstant.ONLINE_KEY);
+    }
+
+}
diff --git a/ycl-server/src/main/java/com/ycl/thread/OnlineCheckThread.java b/ycl-server/src/main/java/com/ycl/thread/OnlineCheckThread.java
index 4003e46..a3c762d 100644
--- a/ycl-server/src/main/java/com/ycl/thread/OnlineCheckThread.java
+++ b/ycl-server/src/main/java/com/ycl/thread/OnlineCheckThread.java
@@ -105,13 +105,13 @@
             vo.setOnline(reachable);
         }
         if (!vo.getOnline()) {
-            Integer outLineTimes = (Integer) redisTemplate.opsForHash().get(RedisConstant.ONLINE_PREFIX, monitor.getIp());
+            Integer outLineTimes = (Integer) redisTemplate.opsForHash().get(RedisConstant.ONLINE_KEY, monitor.getIp());
             if (Objects.isNull(outLineTimes)) {
                 outLineTimes = 1;
             } else {
                 outLineTimes += 1;
             }
-            redisTemplate.opsForHash().put(RedisConstant.ONLINE_PREFIX, monitor.getIp(), outLineTimes);
+            redisTemplate.opsForHash().put(RedisConstant.ONLINE_KEY, monitor.getIp(), outLineTimes);
             // 涓�澶╁唴鐩戞祴鍒扮绾�1娆′互涓婏紝鐢熸垚宸ュ崟
             if (outLineTimes >= times) {
                 WorkOrder workOrder = new WorkOrder();

--
Gitblit v1.8.0