From 38721b0189dd1eae4b1cab9f6aee8a2db9616f47 Mon Sep 17 00:00:00 2001 From: wangshilong Date: Wed, 12 Mar 2025 15:42:41 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E9=99=A4=E9=9B=86=E6=B0=94=E7=AB=99?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2limit=E9=99=90=E5=88=B6=EF=BC=9B=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE=E9=83=A8=E5=B1=95?= =?UTF-8?q?=E7=A4=BA5=E5=88=86=E9=92=9F=E4=B9=8B=E5=89=8D=E7=9A=84?= =?UTF-8?q?=E9=87=87=E9=9B=86=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gaswellwatch/service/impl/DeviceServiceImpl.java | 12 ++++++++++++ src/main/resources/mapper/DeviceDao.xml | 1 - 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/isu/gaswellwatch/service/impl/DeviceServiceImpl.java b/src/main/java/com/isu/gaswellwatch/service/impl/DeviceServiceImpl.java index 2e0fea1..c53b6cd 100644 --- a/src/main/java/com/isu/gaswellwatch/service/impl/DeviceServiceImpl.java +++ b/src/main/java/com/isu/gaswellwatch/service/impl/DeviceServiceImpl.java @@ -19,6 +19,7 @@ import com.isu.gaswellwatch.exception.BusinessException; import com.isu.gaswellwatch.modbus.data.CacheService; import com.isu.gaswellwatch.modbus.data.PersistenceHandler; import com.isu.gaswellwatch.modbus.data.Redis2DBPersistenceService; +import com.isu.gaswellwatch.modbus.data.decode.impl.LocalDateTimeDecodeHandler; import com.isu.gaswellwatch.service.*; import com.isu.gaswellwatch.utils.ConverterUtil; import com.isu.gaswellwatch.vo.*; @@ -36,6 +37,7 @@ import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.LocalDateTime; import java.util.*; @@ -98,6 +100,7 @@ public class DeviceServiceImpl extends ServiceImpl implements Map miWepsPlugStatus = this.dictionaryService.getValueMapByType("miWepsPlugStatus"); try { + LocalDateTime now = LocalDateTime.now(), earliestTime = now.minusMinutes(5); for (DeviceVO deviceVO : deviceVOList) { String deviceKey = PersistenceHandler.DEVICE_DATA_CACHE + deviceVO.getId(); Object online = this.redisTemplate.opsForHash().get(deviceKey, "online"); @@ -107,6 +110,15 @@ public class DeviceServiceImpl extends ServiceImpl implements continue; } + Object collectionTime = this.redisTemplate.opsForHash().get(deviceKey, "collectionTime"); + if (Objects.nonNull(collectionTime)) { + LocalDateTime collectionLocalDateTime = LocalDateTime.parse(String.valueOf(collectionTime), + LocalDateTimeDecodeHandler.OUT_FORMATTER); + if (earliestTime.isBefore(collectionLocalDateTime)) { + continue; + } + } + Object casPressure = this.redisTemplate.opsForHash().get(deviceKey, "casPressure"); deviceVO.setCasPressure(casPressure == null ? "" : casPressure.toString()); diff --git a/src/main/resources/mapper/DeviceDao.xml b/src/main/resources/mapper/DeviceDao.xml index 720d15c..8e2e6a4 100644 --- a/src/main/resources/mapper/DeviceDao.xml +++ b/src/main/resources/mapper/DeviceDao.xml @@ -48,7 +48,6 @@ order by u.id desc - limit 10