package com.zdcf.search;
import org.apache.commons.lang3.StringUtils;
import org.elasticsearch.common.unit.DistanceUnit;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.sort.SortBuilder;
import org.elasticsearch.search.sort.SortBuilders;
import org.elasticsearch.search.sort.SortOrder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.elasticsearch.core.ElasticsearchTemplate;
import com.zdcf.search.param.SearchParam;
public class BaseSearchService {
// @Autowired
// protected ElasticsearchTemplate elasticsearchTemplate;
//排序
protected SortBuilder addSort(SearchParam param){
Integer sort = param.getSort();
// if(null==sort){
// return SortBuilders.fieldSort("lastRefresh").order(SortOrder.DESC);
// }else if(Constants.Sort.nearest == sort){
// return SortBuilders.geoDistanceSort("geoPoint").point(param.getLat(), param.getLon()).order(SortOrder.ASC);
//
// } else if(Constants.Sort.pageView == sort){
// return SortBuilders.fieldSort("reviewNum").order(SortOrder.DESC);
//
// } else if(Constants.Sort.score == sort){
// return SortBuilders.fieldSort("avgScore").order(SortOrder.DESC);
//
// } else if(Constants.Sort.priceAsc == sort){
// return SortBuilders.fieldSort("price").order(SortOrder.ASC);
//
// } else if(Constants.Sort.priceDesc == sort){
// return SortBuilders.fieldSort("price").order(SortOrder.DESC);
//
// }
return SortBuilders.fieldSort("addTime").order(SortOrder.DESC);
}
}