From 51a687530f85b3aa7faf3b6ba97ee91042c02718 Mon Sep 17 00:00:00 2001 From: HuangHuiKang Date: Tue, 24 Feb 2026 10:56:56 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceOperationRecordMapper.java | 4 +++ .../iot/service/device/DeviceServiceImpl.java | 14 ++++---- .../DeviceOperationRecordMapper.xml | 33 +++++++++++++++++++ 3 files changed, 45 insertions(+), 6 deletions(-) diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/deviceoperationrecord/DeviceOperationRecordMapper.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/deviceoperationrecord/DeviceOperationRecordMapper.java index da1956d73..22c260db6 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/deviceoperationrecord/DeviceOperationRecordMapper.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/dal/mysql/deviceoperationrecord/DeviceOperationRecordMapper.java @@ -33,4 +33,8 @@ public interface DeviceOperationRecordMapper extends BaseMapperX deviceOperationPage(Page page,@Param("pageReqVO") DeviceTotalTimeRecordReqVO pageReqVO); + List selectLatestByDeviceAndRule(@Param("deviceIds") List deviceIds, @Param("ruleCodes") List ruleCodes); + + + } \ No newline at end of file diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java index 2dad10c11..6029ed05e 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/java/cn/iocoder/yudao/module/iot/service/device/DeviceServiceImpl.java @@ -328,12 +328,14 @@ public class DeviceServiceImpl implements DeviceService { .map(DeviceStatusEnum::getCode) .collect(Collectors.toList()); - List operationRecords = deviceOperationRecordMapper.selectList( - Wrappers.lambdaQuery() - .in(DeviceOperationRecordDO::getDeviceId, deviceIds) - .in(DeviceOperationRecordDO::getRule, ruleCodes) - .orderByDesc(DeviceOperationRecordDO::getCreateTime) - ); +// List operationRecords = deviceOperationRecordMapper.selectList( +// Wrappers.lambdaQuery() +// .in(DeviceOperationRecordDO::getDeviceId, deviceIds) +// .in(DeviceOperationRecordDO::getRule, ruleCodes) +// .orderByDesc(DeviceOperationRecordDO::getCreateTime) +// ); + + List operationRecords = deviceOperationRecordMapper.selectLatestByDeviceAndRule(deviceIds,ruleCodes); // 按 deviceId 分组,取最新一条 Map latestRecordMap = operationRecords.stream() diff --git a/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/deviceoperationrecord/DeviceOperationRecordMapper.xml b/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/deviceoperationrecord/DeviceOperationRecordMapper.xml index bc33e7e71..609456924 100644 --- a/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/deviceoperationrecord/DeviceOperationRecordMapper.xml +++ b/yudao-module-iot/yudao-module-iot-biz/src/main/resources/mapper/deviceoperationrecord/DeviceOperationRecordMapper.xml @@ -40,4 +40,37 @@ GROUP BY ide.id, ide.device_code, ide.device_name ORDER BY ide.device_code + \ No newline at end of file