From 5c82602d54928cc414177084ab6d81cef4c11d15 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期二, 11 三月 2025 09:33:25 +0800 Subject: [PATCH] getosd数组下标越界问题 以及 离线时间 --- ycl-server/src/main/java/com/ycl/task/PlatformTask.java | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/task/PlatformTask.java b/ycl-server/src/main/java/com/ycl/task/PlatformTask.java index f9ca8df..88a6f7c 100644 --- a/ycl-server/src/main/java/com/ycl/task/PlatformTask.java +++ b/ycl-server/src/main/java/com/ycl/task/PlatformTask.java @@ -12,8 +12,11 @@ import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Component; +import javax.swing.text.DateFormatter; import java.io.IOException; import java.net.InetAddress; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; import java.util.Objects; @@ -74,7 +77,11 @@ } if (!reachable) { // 濡傛灉ping涓嶉�氾紝绂荤嚎鏃堕暱鍔�5绉� - redisTemplate.opsForValue().increment(REDIS_KEY_PREFIX + platform.getPlatformIP(), 5); + LocalDateTime localDateTime = LocalDateTime.now(); + DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + String todayTime = localDateTime.format(dateTimeFormatter); + //姣忔redis绱5s + redisTemplate.opsForValue().increment(REDIS_KEY_PREFIX + todayTime + platform.getPlatformIP(), 5); log.warn(platform.getPlatformName() + "骞冲彴鏈猵ing閫�"); } } catch (Exception e) { @@ -94,9 +101,11 @@ .list(); // 灏唈ava.util.Date杞崲涓簀ava.sql.Date java.sql.Date sqlDate = new java.sql.Date(new Date().getTime()); - + LocalDateTime localDateTime = LocalDateTime.now(); + DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + String todayTime = localDateTime.format(dateTimeFormatter); for (Platform platform : platformList) { - Object outLineTime = redisTemplate.opsForValue().get(REDIS_KEY_PREFIX + platform.getPlatformIP()); + Object outLineTime = redisTemplate.opsForValue().get(REDIS_KEY_PREFIX + todayTime + platform.getPlatformIP()); Integer outlineTimeSed = Objects.isNull(outLineTime) ? 0 : (Integer) outLineTime; PlatformOnline one = new LambdaQueryChainWrapper<>(platformOnlineService.getBaseMapper()) .eq(PlatformOnline::getPlatformId, platform.getId()) -- Gitblit v1.8.0