From 092e1895006b688ea8d71278d9fa39b1be7f61ed Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期六, 11 十月 2025 17:27:19 +0800
Subject: [PATCH] 订单代码上移到controller
---
framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java | 17 +++++++++++++----
1 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java b/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java
index 1cc5c9d..b0a4a72 100644
--- a/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java
@@ -103,6 +103,7 @@
NativeSearchQuery searchQuery = searchQueryBuilder.build();
searchQuery.setTrackTotalHits(true);
log.info("searchGoods DSL:{}", searchQuery.getQuery().toString());
+ log.info("searchGoods sort:{}", searchQuery.getElasticsearchSorts().toString());
SearchHits<EsGoodsIndex> search = restTemplate.search(searchQuery, EsGoodsIndex.class);
return SearchHitSupport.searchPageFor(search, searchQuery.getPageable());
}
@@ -454,8 +455,16 @@
FunctionScoreQueryBuilder.FilterFunctionBuilder[] builders = new FunctionScoreQueryBuilder.FilterFunctionBuilder[filterFunctionBuilders.size()];
filterFunctionBuilders.toArray(builders);
FunctionScoreQueryBuilder functionScoreQueryBuilder = QueryBuilders.functionScoreQuery(QueryBuilders.matchAllQuery(), builders)
- .scoreMode(FunctionScoreQuery.ScoreMode.SUM)
- .setMinScore(2);
+ .scoreMode(FunctionScoreQuery.ScoreMode.SUM);
+ functionScoreQueryBuilder.setMinScore(0);
+// if (CharSequenceUtil.isNotEmpty(searchDTO.getPromotionsId()) && CharSequenceUtil.isNotEmpty(searchDTO.getPromotionType())) {
+// functionScoreQueryBuilder.setMinScore(0);
+// }else if (cn.lili.common.utils.StringUtils.isNotBlank(searchDTO.getCategoryId())){
+// functionScoreQueryBuilder.setMinScore(0);
+// }
+// else {
+// functionScoreQueryBuilder.setMinScore(2);
+// }
//鑱氬悎鎼滅储鍒欏皢缁撴灉鏀惧叆杩囨护鏉′欢
filterBuilder.must(functionScoreQueryBuilder);
} else {
@@ -468,7 +477,7 @@
if (pageVo != null && CharSequenceUtil.isNotEmpty(pageVo.getOrder()) && CharSequenceUtil.isNotEmpty(pageVo.getSort())) {
- nativeSearchQueryBuilder.withSort(SortBuilders.fieldSort(pageVo.getSort()).order(SortOrder.valueOf(pageVo.getOrder().toUpperCase())));
+ nativeSearchQueryBuilder.withSort(SortBuilders.fieldSort(pageVo.getSort()).order(SortOrder.valueOf(pageVo.getOrder().toUpperCase())).missing("_last"));
} else {
nativeSearchQueryBuilder.withSort(SortBuilders.scoreSort().order(SortOrder.DESC));
}
@@ -664,7 +673,7 @@
filterFunctionBuilders.toArray(builders);
FunctionScoreQueryBuilder functionScoreQueryBuilder = QueryBuilders.functionScoreQuery(goodsNameMatchQuery, builders)
.scoreMode(FunctionScoreQuery.ScoreMode.SUM)
- .setMinScore(2);
+ .setMinScore(0);
//鑱氬悎鎼滅储鍒欏皢缁撴灉鏀惧叆杩囨护鏉′欢
filterBuilder.must(functionScoreQueryBuilder);
filterBuilder.should(QueryBuilders.boolQuery().should(QueryBuilders.matchPhraseQuery("goodsName", keyword).boost(10)));
--
Gitblit v1.8.0