From 885d38fa1f524708e911aa4e5f1b6deb6a840b41 Mon Sep 17 00:00:00 2001 From: zhouhao Date: Fri, 14 Feb 2020 11:29:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/service/LocalDeviceInstanceService.java | 9 +++------ .../community/device/web/DeviceInstanceController.java | 6 +++++- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/service/LocalDeviceInstanceService.java b/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/service/LocalDeviceInstanceService.java index e144a773..a0a3a69e 100644 --- a/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/service/LocalDeviceInstanceService.java +++ b/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/service/LocalDeviceInstanceService.java @@ -243,15 +243,12 @@ public class LocalDeviceInstanceService extends GenericReactiveCrudService doGetDeviceProperty(String productId, String deviceId, String property) { - QueryParam queryParam = Query.of() + return Query.of() .and(DevicePropertiesEntity::getDeviceId, deviceId) .and(DevicePropertiesEntity::getProperty, property) - .orderByDesc("timestamp") .doPaging(0, 1) - .getParam(); - return timeSeriesManager - .getService(DeviceTimeSeriesMetric.devicePropertyMetric(productId)) - .query(queryParam) + .execute(timeSeriesManager + .getService(DeviceTimeSeriesMetric.devicePropertyMetric(productId))::query) .map(data -> data.as(DevicePropertiesEntity.class)) .singleOrEmpty(); } diff --git a/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/DeviceInstanceController.java b/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/DeviceInstanceController.java index cb754518..92f7cb4d 100644 --- a/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/DeviceInstanceController.java +++ b/jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/DeviceInstanceController.java @@ -4,6 +4,7 @@ import io.swagger.annotations.ApiOperation; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import org.hswebframework.ezorm.core.param.QueryParam; +import org.hswebframework.ezorm.core.param.TermType; import org.hswebframework.ezorm.rdb.exception.DuplicateKeyException; import org.hswebframework.web.api.crud.entity.PagerResult; import org.hswebframework.web.api.crud.entity.QueryParamEntity; @@ -154,7 +155,10 @@ public class DeviceInstanceController implements QueryParamEntity entity) { return registry.getDevice(deviceId) .flatMap(operator -> operator.getSelfConfig(DeviceConfigKey.productId)) - .flatMap(productId -> timeSeriesManager.getService(DeviceTimeSeriesMetric.deviceLogMetric(productId)).queryPager(entity, data -> data.as(DeviceOperationLogEntity.class))) + .flatMap(productId -> timeSeriesManager + .getService(DeviceTimeSeriesMetric.deviceLogMetric(productId)) + .queryPager(entity.and("deviceId", TermType.eq, deviceId), + data -> data.as(DeviceOperationLogEntity.class))) .defaultIfEmpty(PagerResult.empty()); }