Browse Source

set missing value for sort field of Brand

sunyj 8 years ago
parent
commit
ec996496c9
1 changed files with 7 additions and 3 deletions
  1. 7 3
      src/main/java/com/uas/search/service/impl/SearchServiceImpl.java

+ 7 - 3
src/main/java/com/uas/search/service/impl/SearchServiceImpl.java

@@ -159,9 +159,13 @@ public class SearchServiceImpl implements SearchService {
 	 */
 	private Sort sortBrand() {
 		// 权重 > 访问量 > 搜索次数
-		return new Sort(new SortField(SearchConstants.BRAND_WEIGHT_FIELD, Type.DOUBLE, true),
-				new SortField(SearchConstants.BRAND_VISIT_COUNT_FIELD, Type.LONG, true),
-				new SortField(SearchConstants.BRAND_SEARCH_COUNT_FIELD, Type.LONG, true));
+		SortField weightSortField = new SortField(SearchConstants.BRAND_WEIGHT_FIELD, Type.DOUBLE, true);
+		weightSortField.setMissingValue(Double.MIN_VALUE);
+		SortField visitCountSortField = new SortField(SearchConstants.BRAND_VISIT_COUNT_FIELD, Type.LONG, true);
+		visitCountSortField.setMissingValue(Long.MIN_VALUE);
+		SortField searchCountSortField = new SortField(SearchConstants.BRAND_SEARCH_COUNT_FIELD, Type.LONG, true);
+		searchCountSortField.setMissingValue(Long.MIN_VALUE);
+		return new Sort(weightSortField, visitCountSortField, searchCountSortField);
 	}
 
 	@Override