Bläddra i källkod

Create suggest from documents in order of click count.

yfujita 8 år sedan
förälder
incheckning
57c8bee683
1 ändrade filer med 3 tillägg och 0 borttagningar
  1. 3 0
      src/main/java/org/codelibs/fess/helper/SuggestHelper.java

+ 3 - 0
src/main/java/org/codelibs/fess/helper/SuggestHelper.java

@@ -53,6 +53,7 @@ import org.elasticsearch.index.query.BoolQueryBuilder;
 import org.elasticsearch.index.query.QueryBuilders;
 import org.elasticsearch.index.query.QueryBuilders;
 import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder;
 import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder;
 import org.elasticsearch.index.query.functionscore.ScoreFunctionBuilders;
 import org.elasticsearch.index.query.functionscore.ScoreFunctionBuilders;
+import org.elasticsearch.search.sort.SortBuilders;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 
 
@@ -164,6 +165,8 @@ public class SuggestHelper {
                             reader.setQuery(QueryBuilders.functionScoreQuery(QueryBuilders.matchAllQuery(),
                             reader.setQuery(QueryBuilders.functionScoreQuery(QueryBuilders.matchAllQuery(),
                                     flist.toArray(new FunctionScoreQueryBuilder.FilterFunctionBuilder[flist.size()])).boostMode(
                                     flist.toArray(new FunctionScoreQueryBuilder.FilterFunctionBuilder[flist.size()])).boostMode(
                                     CombineFunction.MULTIPLY));
                                     CombineFunction.MULTIPLY));
+                            reader.addSort(SortBuilders.fieldSort(fessConfig.getIndexFieldClickCount()));
+                            reader.addSort(SortBuilders.scoreSort());
                             return reader;
                             return reader;
                         }, 2, fessConfig.getSuggestUpdateRequestIntervalAsInteger().longValue()).then(response -> {
                         }, 2, fessConfig.getSuggestUpdateRequestIntervalAsInteger().longValue()).then(response -> {
                     suggester.refresh();
                     suggester.refresh();