From 7bf9fe82149d2dc5d1711474d68ebc3d327f3833 Mon Sep 17 00:00:00 2001 From: zhou-hao Date: Fri, 20 Mar 2020 16:24:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=8E=92=E5=BA=8F=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../timeseries/ElasticSearchTimeSeriesService.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/jetlinks-components/elasticsearch-component/src/main/java/org/jetlinks/community/elastic/search/timeseries/ElasticSearchTimeSeriesService.java b/jetlinks-components/elasticsearch-component/src/main/java/org/jetlinks/community/elastic/search/timeseries/ElasticSearchTimeSeriesService.java index a28a8902..83af3dfa 100644 --- a/jetlinks-components/elasticsearch-component/src/main/java/org/jetlinks/community/elastic/search/timeseries/ElasticSearchTimeSeriesService.java +++ b/jetlinks-components/elasticsearch-component/src/main/java/org/jetlinks/community/elastic/search/timeseries/ElasticSearchTimeSeriesService.java @@ -2,6 +2,7 @@ package org.jetlinks.community.elastic.search.timeseries; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; import org.hswebframework.ezorm.core.param.QueryParam; import org.hswebframework.web.api.crud.entity.PagerResult; import org.jetlinks.community.elastic.search.service.AggregationService; @@ -32,7 +33,7 @@ public class ElasticSearchTimeSeriesService implements TimeSeriesService { @Override public Flux query(QueryParam queryParam) { - return elasticSearchService.query(index, queryParam, map -> TimeSeriesData.of(timeType.convert(map.get("timestamp")), map)); + return elasticSearchService.query(index, applySort(queryParam), map -> TimeSeriesData.of(timeType.convert(map.get("timestamp")), map)); } @Override @@ -44,12 +45,12 @@ public class ElasticSearchTimeSeriesService implements TimeSeriesService { @Override public Mono> queryPager(QueryParam queryParam) { - return elasticSearchService.queryPager(index, queryParam, map -> TimeSeriesData.of(timeType.convert(map.get("timestamp")), map)); + return elasticSearchService.queryPager(index, applySort(queryParam), map -> TimeSeriesData.of(timeType.convert(map.get("timestamp")), map)); } @Override public Mono> queryPager(QueryParam queryParam, Function mapper) { - return elasticSearchService.queryPager(index, queryParam, map -> mapper.apply(TimeSeriesData.of(timeType.convert(map.get("timestamp")), map))); + return elasticSearchService.queryPager(index, applySort(queryParam), map -> mapper.apply(TimeSeriesData.of(timeType.convert(map.get("timestamp")), map))); } @Override @@ -64,6 +65,12 @@ public class ElasticSearchTimeSeriesService implements TimeSeriesService { } + protected QueryParam applySort(QueryParam param){ + if(CollectionUtils.isEmpty(param.getSorts())){ + param.orderBy("timestamp").desc(); + } + return param; + } @Override public Mono save(Publisher data) { return Flux.from(data)