|
@@ -23,6 +23,7 @@ import cn.cslg.pas.service.business.CommonService;
|
|
|
import cn.cslg.pas.service.common.PatentStarApiService;
|
|
|
import cn.cslg.pas.service.query.FormatQueryService;
|
|
|
import co.elastic.clients.elasticsearch.ElasticsearchClient;
|
|
|
+import co.elastic.clients.elasticsearch._types.SortOptions;
|
|
|
import co.elastic.clients.elasticsearch._types.SortOrder;
|
|
|
import co.elastic.clients.elasticsearch._types.aggregations.*;
|
|
|
import co.elastic.clients.elasticsearch._types.query_dsl.*;
|
|
@@ -195,7 +196,10 @@ public class EsService {
|
|
|
}
|
|
|
String esField = str;
|
|
|
if (StringUtils.isNotEmpty(esField)) {
|
|
|
- Aggregation hits = AggregationBuilders.topHits(i -> i.size(1));
|
|
|
+ List<SortOptions> options = new ArrayList<>();
|
|
|
+ SortOptions appDate = SortOptions.of(i -> i.field(j -> j.field("app_date").order(SortOrder.Asc)));
|
|
|
+ options.add(appDate);
|
|
|
+ Aggregation hits = AggregationBuilders.topHits(i -> i.size(1).sort(options));
|
|
|
Aggregation aggregation = new Aggregation.Builder().terms(new TermsAggregation.Builder()
|
|
|
.field(esField).build())
|
|
|
.aggregations(new HashMap() {{
|