From c84dc559f717d1cff50a540219bd83bbfaa25ab0 Mon Sep 17 00:00:00 2001 From: HuangHuiKang Date: Wed, 1 Apr 2026 18:39:16 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E6=8A=A5=E8=AD=A6=E7=BB=9F=E8=AE=A1-?= =?UTF-8?q?=E8=B6=8B=E5=8A=BF=E6=9F=B1=E7=8A=B6=E5=9B=BE=E4=B8=BA0?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WarningTrendPointRespDTO.java | 2 +- .../DeviceWarinningRecordServiceImpl.java | 27 ++++++++++++++++--- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/dataobject/devicewarinningrecord/WarningTrendPointRespDTO.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/dataobject/devicewarinningrecord/WarningTrendPointRespDTO.java index e83a2d5..78eaa14 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/dataobject/devicewarinningrecord/WarningTrendPointRespDTO.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/dataobject/devicewarinningrecord/WarningTrendPointRespDTO.java @@ -6,5 +6,5 @@ import lombok.Data; @Data public class WarningTrendPointRespDTO { private String timeKey; - private Long count; + private Long cnt; } diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/devicewarinningrecord/DeviceWarinningRecordServiceImpl.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/devicewarinningrecord/DeviceWarinningRecordServiceImpl.java index 574316a..4750412 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/devicewarinningrecord/DeviceWarinningRecordServiceImpl.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/devicewarinningrecord/DeviceWarinningRecordServiceImpl.java @@ -287,8 +287,9 @@ public class DeviceWarinningRecordServiceImpl implements DeviceWarinningRecordSe List rows = iotDeviceMapper.selectWarningTrendByHour(start, end); for (WarningTrendPointRespDTO row : rows) { - if (bucket.containsKey(row.getTimeKey())) { - bucket.put(row.getTimeKey(), row.getCount() == null ? 0L : row.getCount()); + String key = normalizeHourKey(row.getTimeKey()); // 按小时分支 + if (bucket.containsKey(key)) { + bucket.put(key, row.getCnt() == null ? 0L : row.getCnt()); } } } else { @@ -303,8 +304,9 @@ public class DeviceWarinningRecordServiceImpl implements DeviceWarinningRecordSe List rows = iotDeviceMapper.selectWarningTrendByDay(start, end); for (WarningTrendPointRespDTO row : rows) { - if (bucket.containsKey(row.getTimeKey())) { - bucket.put(row.getTimeKey(), row.getCount() == null ? 0L : row.getCount()); + String key = normalizeDayKey(row.getTimeKey()); // 按天分支 + if (bucket.containsKey(key)) { + bucket.put(key, row.getCnt() == null ? 0L : row.getCnt()); } } } @@ -315,6 +317,23 @@ public class DeviceWarinningRecordServiceImpl implements DeviceWarinningRecordSe return resp; } + private String normalizeHourKey(String raw) { + if (raw == null) return null; + String s = raw.trim().replace('T', ' '); + if (s.length() >= 16) { // yyyy-MM-dd HH:mm... + return s.substring(0, 13) + ":00"; + } + return s; + } + + private String normalizeDayKey(String raw) { + if (raw == null) return null; + String s = raw.trim().replace('T', ' '); + if (s.length() >= 10) { // yyyy-MM-dd... + return s.substring(0, 10); + } + return s; + } } \ No newline at end of file