Update EsProductServiceImpl.java
This commit is contained in:
parent
5890a3e31e
commit
88a684c08d
@ -178,16 +178,21 @@ public class EsProductServiceImpl implements EsProductService {
|
||||
filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.matchQuery("keywords", keyword),
|
||||
ScoreFunctionBuilders.weightFactorFunction(2)));
|
||||
filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.matchQuery("brandId", brandId),
|
||||
ScoreFunctionBuilders.weightFactorFunction(10)));
|
||||
ScoreFunctionBuilders.weightFactorFunction(5)));
|
||||
filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.matchQuery("productCategoryId", productCategoryId),
|
||||
ScoreFunctionBuilders.weightFactorFunction(6)));
|
||||
ScoreFunctionBuilders.weightFactorFunction(3)));
|
||||
FunctionScoreQueryBuilder.FilterFunctionBuilder[] builders = new FunctionScoreQueryBuilder.FilterFunctionBuilder[filterFunctionBuilders.size()];
|
||||
filterFunctionBuilders.toArray(builders);
|
||||
FunctionScoreQueryBuilder functionScoreQueryBuilder = QueryBuilders.functionScoreQuery(builders)
|
||||
.scoreMode(FunctionScoreQuery.ScoreMode.SUM)
|
||||
.setMinScore(2);
|
||||
//用于过滤掉相同的商品
|
||||
BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
|
||||
boolQueryBuilder.mustNot(QueryBuilders.termQuery("id",id));
|
||||
//构建查询条件
|
||||
NativeSearchQueryBuilder builder = new NativeSearchQueryBuilder();
|
||||
builder.withQuery(functionScoreQueryBuilder);
|
||||
builder.withFilter(boolQueryBuilder);
|
||||
builder.withPageable(pageable);
|
||||
NativeSearchQuery searchQuery = builder.build();
|
||||
LOGGER.info("DSL:{}", searchQuery.getQuery().toString());
|
||||
|
Loading…
x
Reference in New Issue
Block a user