diff --git a/cl_search_api/pom.xml b/cl_search_api/pom.xml
index f0ddb5c..9decd64 100644
--- a/cl_search_api/pom.xml
+++ b/cl_search_api/pom.xml
@@ -13,7 +13,7 @@
cl_search_api
Search V3.2 API
cl_search_api
- 3.2.4-SNAPSHOT
+ 3.2.5-SNAPSHOT
diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java
index 20a92b6..12b8798 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/ParseSearchScopeService.java
@@ -55,7 +55,8 @@ public class ParseSearchScopeService {
public static BoolQueryBuilder getSearchTypeQuery(Integer searchType) {
BoolQueryBuilder searchScopeQuery = null;
if(searchType == 0 ){ //0:主贴;1:评论;2:用户 || ES 中 primary=1为主贴
- searchScopeQuery = QueryBuilders.boolQuery().must(QueryBuilders.termQuery(ESConstant.PRIMARY, 1));
+ searchScopeQuery = QueryBuilders.boolQuery().must(QueryBuilders.termQuery(ESConstant.PRIMARY,
+ 1));
} else if(searchType == 1){
searchScopeQuery = QueryBuilders.boolQuery()
.should(QueryBuilders.termQuery(ESConstant.PRIMARY, 0))
diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/SubjectQueryDataService.java b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/SubjectQueryDataService.java
index 3f38359..d56757b 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/common/service/es/SubjectQueryDataService.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/common/service/es/SubjectQueryDataService.java
@@ -7,6 +7,7 @@ import com.bfd.mf.common.util.constants.ESConstant;
import com.bfd.mf.common.util.thread.SubjectDataQueryThread;
import com.bfd.mf.common.web.entity.mysql.cache.Cluster;
import com.bfd.mf.common.web.vo.params.QueryRequest;
+import com.bfd.mf.config.BFDApiConfig;
import com.bfd.nlp.common.util.string.TStringUtils;
import org.elasticsearch.action.search.SearchRequestBuilder;
import org.elasticsearch.action.search.SearchResponse;
@@ -38,6 +39,9 @@ public class SubjectQueryDataService {
private Logger logger = LoggerFactory.getLogger(SubjectQueryDataService.class);
private static final Long ONE_DAY = 60 * 60 * 1000L * 24;
+
+ @Autowired
+ private BFDApiConfig bfdApiConfig;
@Autowired
private TopicQueryService topicQueryService;
@Autowired
@@ -156,4 +160,22 @@ public class SubjectQueryDataService {
return new ArrayList<>(set);
}
+ /**
+ * 现在用这个方法
+ * @param subjectIds
+ * @return
+ */
+ public List getIndexBySubjectIds(String subjectIds) {
+ Set set = new HashSet<>();
+ if(subjectIds.contains(",")){
+ for(String subjectId :subjectIds.split(",")){
+ set.add(bfdApiConfig.getIndexNamePre() + subjectId);
+ }
+ }else {
+ String subjectId = subjectIds;
+ set.add(bfdApiConfig.getIndexNamePre() + subjectId);
+ }
+ return new ArrayList<>(set);
+ }
+
}
\ No newline at end of file
diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java
index 0123d7c..a6d633a 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/common/util/ESServerUtils.java
@@ -42,7 +42,7 @@ import java.util.Map;
*/
@Component
public class ESServerUtils implements Serializable {
- private static Logger logger = LoggerFactory.getLogger(ESServerUtils.class);
+ private final static Logger logger = LoggerFactory.getLogger(ESServerUtils.class);
private static final long serialVersionUID = 1L;
private static Map clientByClusterId = new HashMap<>();
@Autowired
diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/es/EsUtils.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/es/EsUtils.java
index 53a46d7..fe5ebb3 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/common/util/es/EsUtils.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/common/util/es/EsUtils.java
@@ -241,11 +241,16 @@ public abstract class EsUtils {
.setQuery(queryBuilder)
.addAggregation(aggregation);
- // System.out.println(requestBuilder);
+ System.out.println(requestBuilder);
Aggregations aggregations = requestBuilder.get().getAggregations();
Cardinality cardinality = aggregations.get(count);
- // System.out.println("1111 : "+cardinality.getValue());
- return cardinality.getValue();
+ System.out.println("1111 : " + cardinality.getValue());
+ System.out.println("2222 : " + requestBuilder.get().getHits().totalHits);
+ long resultCount = cardinality.getValue();
+ if(searchType == 2){
+ resultCount = requestBuilder.get().getHits().totalHits;
+ }
+ return resultCount;
}
diff --git a/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java b/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java
index 87af8d9..1acbf49 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/common/util/slice/SliceScrollUtil.java
@@ -1,6 +1,5 @@
package com.bfd.mf.common.util.slice;
-import com.bfd.mf.common.service.es.ClusterService;
import com.bfd.mf.common.service.es.SubjectQueryDataService;
import com.bfd.mf.common.util.constants.ESConstant;
import com.bfd.mf.common.web.entity.mysql.cache.Cluster;
@@ -25,8 +24,6 @@ import java.util.stream.Collectors;
public class SliceScrollUtil {
private static final Logger logger = LoggerFactory.getLogger(SliceScrollUtil.class);
@Autowired
- private ClusterService clusterService;
- @Autowired
private SubjectQueryDataService subjectQueryDataService;
/**
@@ -131,12 +128,12 @@ public class SliceScrollUtil {
List currentIndexList = null;
if(null != queryRequest.getSubjectId() && !("all").equals(queryRequest.getSubjectId())){
logger.info("查询 【专题数据】 subjectId :{}" ,queryRequest.getSubjectId());
- cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.special_cluster_type);
- currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId());
- }else{
- logger.info("[SliceScrollUtil] fetchResultSubjectCache : 查询 【全局数据】");
- cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.special_cluster_type);
- currentIndexList = subjectQueryDataService.getIndexListByTimeRange(cluster, queryRequest.getStartTime(),queryRequest.getEndTime());
+ //cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.special_cluster_type);
+ currentIndexList = subjectQueryDataService.getIndexBySubjectIds( queryRequest.getSubjectId());
+// }else{
+// logger.info("[SliceScrollUtil] fetchResultSubjectCache : 查询 【全局数据】");
+// cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.special_cluster_type);
+// currentIndexList = subjectQueryDataService.getIndexListByTimeRange(queryRequest.getStartTime(),queryRequest.getEndTime());
}
Long clusterId = cluster.getId();
diff --git a/cl_search_api/src/main/java/com/bfd/mf/service/SearchAuthorService.java b/cl_search_api/src/main/java/com/bfd/mf/service/SearchAuthorService.java
index 107d181..ccb2366 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/service/SearchAuthorService.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/service/SearchAuthorService.java
@@ -2,7 +2,6 @@ package com.bfd.mf.service;
import com.alibaba.fastjson.JSONObject;
import com.bfd.mf.common.service.common.CrudService;
-import com.bfd.mf.common.service.es.ClusterService;
import com.bfd.mf.common.service.es.EsQueryAuthorCountService;
import com.bfd.mf.common.service.es.EsQueryAuthorService;
import com.bfd.mf.common.service.es.SubjectQueryDataService;
@@ -13,6 +12,7 @@ import com.bfd.mf.common.web.repository.mysql.SentimentRepository;
import com.bfd.mf.common.web.repository.mysql.base.SiteRepository;
import com.bfd.mf.common.web.vo.params.QueryRequest;
import com.bfd.mf.common.web.vo.view.monitor.ESMonitorEntity;
+import com.bfd.mf.config.BFDApiConfig;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -28,7 +28,7 @@ import java.util.Map;
public class SearchAuthorService extends CrudService implements Serializable {
private static Logger logger = LoggerFactory.getLogger(SearchAuthorService.class);
@Autowired
- private ClusterService clusterService;
+ private BFDApiConfig bfdApiConfig;
@Autowired
private SubjectQueryDataService subjectQueryDataService;
@Autowired
@@ -75,8 +75,8 @@ public class SearchAuthorService extends CrudService dataList = esQueryAuthorService.queryAuthorByAuthorId(indexNames, queryRequest);
jsonObject = parseAuthorMessage(dataList);
@@ -135,8 +135,8 @@ public class SearchAuthorService extends CrudService dataList = esQueryAuthorService.queryContentsByAuthorId(indexNames, queryRequest);
List esMonitorEntityLists = new ArrayList<>();
@@ -280,8 +280,8 @@ public class SearchAuthorService extends CrudService currentIndexList = subjectQueryDataService.getIndexBySubjectIds(cluster, queryRequest.getSubjectId());
+ // Cluster cluster = clusterService.findClusterByType(Cluster.CLUSTER_TYPE.mini_cluster_type); // 111
+ List currentIndexList = subjectQueryDataService.getIndexBySubjectIds( queryRequest.getSubjectId());
String[] indexName = currentIndexList.toArray(new String[currentIndexList.size()]);
return indexName;
}
diff --git a/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java b/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java
index 3e726b6..0ae01a7 100644
--- a/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java
+++ b/cl_search_api/src/main/java/com/bfd/mf/service/SearchDataService.java
@@ -37,8 +37,6 @@ public class SearchDataService extends CrudService dataIdList,
- String orderFlag,String sortFlag,
+ private SearchResponse buildDataIdQueryCrawl(Integer from, Integer searchSize, List dataIdList,
+ String orderFlag, String sortFlag,
List currentIndexList, Cluster cluster) {
- if(sortFlag.equals(ESConstant.COMMENT)){
+ if (sortFlag.equals(ESConstant.COMMENT)) {
sortFlag = ESConstant.COMMENTS_COUNT;
}
- if(sortFlag.equals("")){
+ if (sortFlag.equals("")) {
sortFlag = ESConstant.PUBTIME;
}
QueryBuilder queryBuilder = esCommonService.buildStringQueryByField(ESConstant.DATA_ID, dataIdList);
@@ -88,19 +86,20 @@ public class SearchDataService extends CrudService dataList, List esMonitorListEntity,Integer searchType) {
+ private void parseQueryResult(List dataList, List esMonitorListEntity, Integer searchType) {
try {
List