mirror of
https://github.com/chatopera/cosin.git
synced 2025-08-01 16:38:02 +08:00
Replace Operator's package path
This commit is contained in:
parent
33b41ed395
commit
d0d85ead52
@ -32,11 +32,7 @@ import com.chatopera.cc.persistence.blob.JpaBlobHelper;
|
|||||||
import com.chatopera.cc.persistence.repository.StreamingFileRepository;
|
import com.chatopera.cc.persistence.repository.StreamingFileRepository;
|
||||||
import com.chatopera.cc.persistence.repository.TenantRepository;
|
import com.chatopera.cc.persistence.repository.TenantRepository;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.*;
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.index.query.RangeQueryBuilder;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -20,11 +20,7 @@ import com.chatopera.cc.model.Contacts;
|
|||||||
import com.chatopera.cc.model.User;
|
import com.chatopera.cc.model.User;
|
||||||
import com.chatopera.cc.persistence.repository.UserRepository;
|
import com.chatopera.cc.persistence.repository.UserRepository;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.*;
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.index.query.RangeQueryBuilder;
|
|
||||||
import org.elasticsearch.search.sort.FieldSortBuilder;
|
import org.elasticsearch.search.sort.FieldSortBuilder;
|
||||||
import org.elasticsearch.search.sort.SortOrder;
|
import org.elasticsearch.search.sort.SortOrder;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -20,11 +20,7 @@ import com.chatopera.cc.model.EntCustomer;
|
|||||||
import com.chatopera.cc.model.User;
|
import com.chatopera.cc.model.User;
|
||||||
import com.chatopera.cc.persistence.repository.UserRepository;
|
import com.chatopera.cc.persistence.repository.UserRepository;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.*;
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.index.query.RangeQueryBuilder;
|
|
||||||
import org.elasticsearch.search.sort.FieldSortBuilder;
|
import org.elasticsearch.search.sort.FieldSortBuilder;
|
||||||
import org.elasticsearch.search.sort.SortOrder;
|
import org.elasticsearch.search.sort.SortOrder;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -42,19 +38,19 @@ import java.util.List;
|
|||||||
import static org.elasticsearch.index.query.QueryBuilders.termQuery;
|
import static org.elasticsearch.index.query.QueryBuilders.termQuery;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public class EntCustomerRepositoryImpl implements EntCustomerEsCommonRepository{
|
public class EntCustomerRepositoryImpl implements EntCustomerEsCommonRepository {
|
||||||
|
|
||||||
private SimpleDateFormat dateFromate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") ;
|
private final SimpleDateFormat dateFromate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserRepository userRes ;
|
private UserRepository userRes;
|
||||||
|
|
||||||
private ElasticsearchTemplate elasticsearchTemplate;
|
private ElasticsearchTemplate elasticsearchTemplate;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public void setElasticsearchTemplate(ElasticsearchTemplate elasticsearchTemplate) {
|
public void setElasticsearchTemplate(ElasticsearchTemplate elasticsearchTemplate) {
|
||||||
this.elasticsearchTemplate = elasticsearchTemplate;
|
this.elasticsearchTemplate = elasticsearchTemplate;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Page<EntCustomer> findByCreaterAndSharesAndOrgi(String creater, String shares ,String orgi, boolean includeDeleteData ,String q , Pageable page) {
|
public Page<EntCustomer> findByCreaterAndSharesAndOrgi(String creater, String shares ,String orgi, boolean includeDeleteData ,String q , Pageable page) {
|
||||||
@ -162,9 +158,9 @@ public class EntCustomerRepositoryImpl implements EntCustomerEsCommonRepository{
|
|||||||
List<User> users = userRes.findAll(ids) ;
|
List<User> users = userRes.findAll(ids) ;
|
||||||
for(EntCustomer entCustomer : entCustomerList.getContent()){
|
for(EntCustomer entCustomer : entCustomerList.getContent()){
|
||||||
for(User user : users){
|
for(User user : users){
|
||||||
if(user.getId().equals(entCustomer.getCreater())){
|
if(user.getId().equals(entCustomer.getCreater())) {
|
||||||
entCustomer.setUser(user);
|
entCustomer.setUser(user);
|
||||||
break ;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,8 +19,8 @@ package com.chatopera.cc.persistence.es;
|
|||||||
import com.chatopera.cc.model.KbsTopicComment;
|
import com.chatopera.cc.model.KbsTopicComment;
|
||||||
import com.chatopera.cc.model.Topic;
|
import com.chatopera.cc.model.Topic;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
|
import org.elasticsearch.index.query.Operator;
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.search.highlight.HighlightBuilder;
|
import org.elasticsearch.search.highlight.HighlightBuilder;
|
||||||
import org.elasticsearch.search.sort.FieldSortBuilder;
|
import org.elasticsearch.search.sort.FieldSortBuilder;
|
||||||
import org.elasticsearch.search.sort.SortOrder;
|
import org.elasticsearch.search.sort.SortOrder;
|
||||||
@ -46,12 +46,12 @@ public class KbsTopicCommentRepositoryImpl implements KbsTopicCommentEsCommonRep
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public Page<KbsTopicComment> findByDataid(String id , int p , int ps) {
|
public Page<KbsTopicComment> findByDataid(String id , int p , int ps) {
|
||||||
Page<KbsTopicComment> pages = null ;
|
Page<KbsTopicComment> pages = null;
|
||||||
SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(termQuery("dataid" , id)).withSort(new FieldSortBuilder("optimal").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC)).build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(termQuery("dataid", id)).withSort(new FieldSortBuilder("optimal").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC)).build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopicComment.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopicComment.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class);
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class);
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -68,17 +68,17 @@ public class KbsTopicCommentRepositoryImpl implements KbsTopicCommentEsCommonRep
|
|||||||
public Page<KbsTopicComment> findByCon(NativeSearchQueryBuilder searchQueryBuilder , String field , String aggname, String q , final int p , final int ps) {
|
public Page<KbsTopicComment> findByCon(NativeSearchQueryBuilder searchQueryBuilder , String field , String aggname, String q , final int p , final int ps) {
|
||||||
Page<KbsTopicComment> pages = null ;
|
Page<KbsTopicComment> pages = null ;
|
||||||
if(!StringUtils.isBlank(q)){
|
if(!StringUtils.isBlank(q)){
|
||||||
searchQueryBuilder.withQuery(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
searchQueryBuilder.withQuery(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build();
|
SearchQuery searchQuery = searchQueryBuilder.build();
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopicComment.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopicComment.class)) {
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class , new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class, new UKResultMapper());
|
||||||
}else{
|
} else {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class , new UKAggTopResultExtractor(field , aggname));
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class, new UKAggTopResultExtractor(field, aggname));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public Page<KbsTopicComment> findByCon(
|
public Page<KbsTopicComment> findByCon(
|
||||||
@ -94,14 +94,14 @@ public class KbsTopicCommentRepositoryImpl implements KbsTopicCommentEsCommonRep
|
|||||||
@Override
|
@Override
|
||||||
public Page<KbsTopicComment> countByCon(
|
public Page<KbsTopicComment> countByCon(
|
||||||
NativeSearchQueryBuilder searchQueryBuilder, String q, int p, int ps) {
|
NativeSearchQueryBuilder searchQueryBuilder, String q, int p, int ps) {
|
||||||
Page<KbsTopicComment> pages = null ;
|
Page<KbsTopicComment> pages = null;
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
searchQueryBuilder.withQuery(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
searchQueryBuilder.withQuery(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(Topic.class)){
|
if (elasticsearchTemplate.indexExists(Topic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class , new UKAggResultExtractor("creater") );
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopicComment.class, new UKAggResultExtractor("creater"));
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,11 +18,7 @@ package com.chatopera.cc.persistence.es;
|
|||||||
|
|
||||||
import com.chatopera.cc.model.KbsTopic;
|
import com.chatopera.cc.model.KbsTopic;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.*;
|
||||||
import org.elasticsearch.index.query.QueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.search.highlight.HighlightBuilder;
|
import org.elasticsearch.search.highlight.HighlightBuilder;
|
||||||
import org.elasticsearch.search.sort.FieldSortBuilder;
|
import org.elasticsearch.search.sort.FieldSortBuilder;
|
||||||
import org.elasticsearch.search.sort.SortOrder;
|
import org.elasticsearch.search.sort.SortOrder;
|
||||||
@ -55,16 +51,16 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{
|
|||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopic.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class , new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class, new UKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
@ -76,17 +72,17 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{
|
|||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("top" , top)) ;
|
boolQueryBuilder.must(termQuery("top" , top)) ;
|
||||||
|
|
||||||
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime())) ;
|
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime()));
|
||||||
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").to(new Date().getTime())) ;
|
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").to(new Date().getTime()));
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
|
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopic.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class , new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class, new UKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -97,16 +93,16 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{
|
|||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withQuery(termQuery("creater" , user)).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withQuery(termQuery("creater", user)).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopic.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class, new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class, new UKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
@ -115,16 +111,16 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{
|
|||||||
|
|
||||||
Page<KbsTopic> pages = null ;
|
Page<KbsTopic> pages = null ;
|
||||||
|
|
||||||
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime())) ;
|
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime()));
|
||||||
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").to(new Date().getTime())) ;
|
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").to(new Date().getTime()));
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
|
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopic.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class);
|
pages = elasticsearchTemplate.queryForPage(searchQuery, KbsTopic.class);
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public List<KbsTopic> getTopicByOrgi(String orgi , String type, String q) {
|
public List<KbsTopic> getTopicByOrgi(String orgi , String type, String q) {
|
||||||
@ -138,15 +134,15 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{
|
|||||||
boolQueryBuilder.must(termQuery("cate" , type)) ;
|
boolQueryBuilder.must(termQuery("cate" , type)) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build();
|
SearchQuery searchQuery = searchQueryBuilder.build();
|
||||||
if(elasticsearchTemplate.indexExists(KbsTopic.class)){
|
if (elasticsearchTemplate.indexExists(KbsTopic.class)) {
|
||||||
list = elasticsearchTemplate.queryForList(searchQuery, KbsTopic.class);
|
list = elasticsearchTemplate.queryForList(searchQuery, KbsTopic.class);
|
||||||
}
|
}
|
||||||
return list ;
|
return list;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,11 +19,7 @@ package com.chatopera.cc.persistence.es;
|
|||||||
import com.chatopera.cc.basic.MainContext;
|
import com.chatopera.cc.basic.MainContext;
|
||||||
import com.chatopera.cc.model.QuickReply;
|
import com.chatopera.cc.model.QuickReply;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.*;
|
||||||
import org.elasticsearch.index.query.QueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.search.highlight.HighlightBuilder;
|
import org.elasticsearch.search.highlight.HighlightBuilder;
|
||||||
import org.elasticsearch.search.sort.FieldSortBuilder;
|
import org.elasticsearch.search.sort.FieldSortBuilder;
|
||||||
import org.elasticsearch.search.sort.SortOrder;
|
import org.elasticsearch.search.sort.SortOrder;
|
||||||
@ -58,16 +54,16 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(page) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(page);
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class , new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class, new UKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -91,16 +87,16 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
|
|
||||||
boolQueryBuilder.must(quickQueryBuilder) ;
|
boolQueryBuilder.must(quickQueryBuilder) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(0, 10000)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(0, 10000));
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
pages = elasticsearchTemplate.queryForList(searchQuery, QuickReply.class);
|
pages = elasticsearchTemplate.queryForList(searchQuery, QuickReply.class);
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -110,16 +106,16 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
Page<QuickReply> pages = null ;
|
Page<QuickReply> pages = null ;
|
||||||
|
|
||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("type" , quicktype)) ;
|
boolQueryBuilder.must(termQuery("type", quicktype));
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
|
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class , new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class, new UKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -130,16 +126,16 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withQuery(termQuery("creater" , user)).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withQuery(termQuery("creater", user)).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class, new UKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class, new UKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
@ -148,16 +144,16 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
|
|
||||||
Page<QuickReply> pages = null ;
|
Page<QuickReply> pages = null ;
|
||||||
|
|
||||||
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime())) ;
|
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime()));
|
||||||
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").to(new Date().getTime())) ;
|
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").to(new Date().getTime()));
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
|
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class);
|
pages = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class);
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public Page<QuickReply> getByOrgiAndType(String orgi ,String type, String q , Pageable page) {
|
public Page<QuickReply> getByOrgiAndType(String orgi ,String type, String q , Pageable page) {
|
||||||
@ -170,16 +166,16 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
boolQueryBuilder.must(termQuery("type" , type)) ;
|
boolQueryBuilder.must(termQuery("type" , type)) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(page);
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(page);
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
list = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class);
|
list = elasticsearchTemplate.queryForPage(searchQuery, QuickReply.class);
|
||||||
}
|
}
|
||||||
return list ;
|
return list;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void deleteByCate(String cate ,String orgi) {
|
public void deleteByCate(String cate ,String orgi) {
|
||||||
@ -205,15 +201,15 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{
|
|||||||
if(!StringUtils.isBlank(type)){
|
if(!StringUtils.isBlank(type)){
|
||||||
boolQueryBuilder.must(termQuery("type" , type)) ;
|
boolQueryBuilder.must(termQuery("type" , type)) ;
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(0, 10000));
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(0, 10000));
|
||||||
if(elasticsearchTemplate.indexExists(QuickReply.class)){
|
if (elasticsearchTemplate.indexExists(QuickReply.class)) {
|
||||||
list = elasticsearchTemplate.queryForList(searchQuery, QuickReply.class);
|
list = elasticsearchTemplate.queryForList(searchQuery, QuickReply.class);
|
||||||
}
|
}
|
||||||
return list ;
|
return list;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,11 +19,7 @@ package com.chatopera.cc.persistence.es;
|
|||||||
import com.chatopera.cc.model.Topic;
|
import com.chatopera.cc.model.Topic;
|
||||||
import com.chatopera.cc.persistence.repository.XiaoEUKResultMapper;
|
import com.chatopera.cc.persistence.repository.XiaoEUKResultMapper;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.*;
|
||||||
import org.elasticsearch.index.query.QueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.elasticsearch.search.highlight.HighlightBuilder;
|
import org.elasticsearch.search.highlight.HighlightBuilder;
|
||||||
import org.elasticsearch.search.sort.FieldSortBuilder;
|
import org.elasticsearch.search.sort.FieldSortBuilder;
|
||||||
import org.elasticsearch.search.sort.SortOrder;
|
import org.elasticsearch.search.sort.SortOrder;
|
||||||
@ -57,18 +53,18 @@ public class TopicRepositoryImpl implements TopicEsCommonRepository{
|
|||||||
if(!StringUtils.isBlank(cate)) {
|
if(!StringUtils.isBlank(cate)) {
|
||||||
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
||||||
}
|
}
|
||||||
boolQueryBuilder.must(termQuery("orgi" , orgi)) ;
|
boolQueryBuilder.must(termQuery("orgi", orgi));
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(Topic.class)){
|
if (elasticsearchTemplate.indexExists(Topic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class , new XiaoEUKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class, new XiaoEUKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
@Override
|
@Override
|
||||||
@ -84,76 +80,76 @@ public class TopicRepositoryImpl implements TopicEsCommonRepository{
|
|||||||
}
|
}
|
||||||
|
|
||||||
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").to(new Date().getTime())) ;
|
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").to(new Date().getTime())) ;
|
||||||
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").from(new Date().getTime())) ;
|
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").from(new Date().getTime()));
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
|
|
||||||
|
|
||||||
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200)) ;
|
searchQueryBuilder.withHighlightFields(new HighlightBuilder.Field("title").fragmentSize(200));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(Topic.class)){
|
if (elasticsearchTemplate.indexExists(Topic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class , new XiaoEUKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class, new XiaoEUKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Page<Topic> getTopicByCateAndUser(String cate , String q , String user ,final int p , final int ps) {
|
public Page<Topic> getTopicByCateAndUser(String cate , String q , String user ,final int p , final int ps) {
|
||||||
|
|
||||||
Page<Topic> pages = null ;
|
Page<Topic> pages = null ;
|
||||||
|
|
||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
boolQueryBuilder.must(termQuery("cate" , cate)) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withQuery(termQuery("creater" , user)).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withQuery(termQuery("creater", user)).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(Topic.class)){
|
if (elasticsearchTemplate.indexExists(Topic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class, new XiaoEUKResultMapper());
|
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class, new XiaoEUKResultMapper());
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
@Override
|
@Override
|
||||||
public Page<Topic> getTopicByCon(BoolQueryBuilder boolQueryBuilder, final int p , final int ps) {
|
public Page<Topic> getTopicByCon(BoolQueryBuilder boolQueryBuilder, final int p , final int ps) {
|
||||||
|
|
||||||
Page<Topic> pages = null ;
|
Page<Topic> pages = null;
|
||||||
|
|
||||||
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").to(new Date().getTime())) ;
|
QueryBuilder beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").to(new Date().getTime()));
|
||||||
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").from(new Date().getTime())) ;
|
QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.missingQuery("endtime")).should(QueryBuilders.rangeQuery("endtime").from(new Date().getTime()));
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withFilter(QueryBuilders.boolQuery().must(beginFilter).must(endFilter)).withSort(new FieldSortBuilder("createtime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps)) ;
|
SearchQuery searchQuery = searchQueryBuilder.build().setPageable(new PageRequest(p, ps));
|
||||||
if(elasticsearchTemplate.indexExists(Topic.class)){
|
if (elasticsearchTemplate.indexExists(Topic.class)) {
|
||||||
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class);
|
pages = elasticsearchTemplate.queryForPage(searchQuery, Topic.class);
|
||||||
}
|
}
|
||||||
return pages ;
|
return pages;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public List<Topic> getTopicByOrgi(String orgi , String type, String q) {
|
public List<Topic> getTopicByOrgi(String orgi , String type, String q) {
|
||||||
|
|
||||||
List<Topic> list = null ;
|
List<Topic> list = null ;
|
||||||
|
|
||||||
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
|
||||||
boolQueryBuilder.must(termQuery("orgi" , orgi)) ;
|
boolQueryBuilder.must(termQuery("orgi" , orgi)) ;
|
||||||
|
|
||||||
if(!StringUtils.isBlank(type)){
|
if(!StringUtils.isBlank(type)){
|
||||||
boolQueryBuilder.must(termQuery("cate" , type)) ;
|
boolQueryBuilder.must(termQuery("cate" , type)) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!StringUtils.isBlank(q)){
|
if (!StringUtils.isBlank(q)) {
|
||||||
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)) ;
|
boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));
|
||||||
}
|
}
|
||||||
|
|
||||||
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
NativeSearchQueryBuilder searchQueryBuilder = new NativeSearchQueryBuilder().withQuery(boolQueryBuilder).withSort(new FieldSortBuilder("top").unmappedType("boolean").order(SortOrder.DESC)).withSort(new FieldSortBuilder("updatetime").unmappedType("date").order(SortOrder.DESC));
|
||||||
SearchQuery searchQuery = searchQueryBuilder.build();
|
SearchQuery searchQuery = searchQueryBuilder.build();
|
||||||
if(elasticsearchTemplate.indexExists(Topic.class)){
|
if (elasticsearchTemplate.indexExists(Topic.class)) {
|
||||||
list = elasticsearchTemplate.queryForList(searchQuery, Topic.class);
|
list = elasticsearchTemplate.queryForList(searchQuery, Topic.class);
|
||||||
}
|
}
|
||||||
return list ;
|
return list;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,9 +24,9 @@ import com.chatopera.cc.model.MetadataTable;
|
|||||||
import com.chatopera.cc.persistence.impl.ESDataExchangeImpl;
|
import com.chatopera.cc.persistence.impl.ESDataExchangeImpl;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.elasticsearch.index.query.BoolQueryBuilder;
|
import org.elasticsearch.index.query.BoolQueryBuilder;
|
||||||
|
import org.elasticsearch.index.query.Operator;
|
||||||
import org.elasticsearch.index.query.QueryBuilder;
|
import org.elasticsearch.index.query.QueryBuilder;
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
import org.elasticsearch.index.query.QueryStringQueryBuilder;
|
||||||
import org.elasticsearch.index.query.QueryStringQueryBuilder.Operator;
|
|
||||||
import org.springframework.data.domain.PageImpl;
|
import org.springframework.data.domain.PageImpl;
|
||||||
import org.springframework.data.domain.PageRequest;
|
import org.springframework.data.domain.PageRequest;
|
||||||
import org.springframework.data.domain.Sort;
|
import org.springframework.data.domain.Sort;
|
||||||
@ -50,29 +50,29 @@ public class SearchTools {
|
|||||||
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).defaultOperator(Operator.AND) ;
|
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).defaultOperator(Operator.AND) ;
|
||||||
}else {
|
}else {
|
||||||
switch(formFilterItem.getCond()) {
|
switch(formFilterItem.getCond()) {
|
||||||
case "01" :
|
case "01":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(false) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(false);
|
||||||
break ;
|
break;
|
||||||
case "02" :
|
case "02":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(true) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(true);
|
||||||
break ;
|
break;
|
||||||
case "03" :
|
case "03":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(false) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(false);
|
||||||
break ;
|
break;
|
||||||
case "04" :
|
case "04":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(true) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(true);
|
||||||
break ;
|
break;
|
||||||
case "05" :
|
case "05":
|
||||||
tempQueryBuilder = termQuery(formFilterItem.getField() , formFilterItem.getValue()) ;
|
tempQueryBuilder = termQuery(formFilterItem.getField(), formFilterItem.getValue());
|
||||||
break ;
|
break;
|
||||||
case "06" :
|
case "06":
|
||||||
tempQueryBuilder = termQuery(formFilterItem.getField() , formFilterItem.getValue()) ;
|
tempQueryBuilder = termQuery(formFilterItem.getField(), formFilterItem.getValue());
|
||||||
break ;
|
break;
|
||||||
case "07" :
|
case "07":
|
||||||
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).field(formFilterItem.getField()).defaultOperator(Operator.AND) ;
|
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).field(formFilterItem.getField()).defaultOperator(Operator.AND);
|
||||||
break ;
|
break;
|
||||||
default :
|
default:
|
||||||
break ;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if("AND".equalsIgnoreCase(formFilterItem.getComp())) {
|
if("AND".equalsIgnoreCase(formFilterItem.getComp())) {
|
||||||
@ -111,29 +111,29 @@ public class SearchTools {
|
|||||||
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).defaultOperator(Operator.AND) ;
|
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).defaultOperator(Operator.AND) ;
|
||||||
}else {
|
}else {
|
||||||
switch(formFilterItem.getCond()) {
|
switch(formFilterItem.getCond()) {
|
||||||
case "01" :
|
case "01":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(false) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(false);
|
||||||
break ;
|
break;
|
||||||
case "02" :
|
case "02":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(true) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).from(formFilterItem.getValue()).includeLower(true);
|
||||||
break ;
|
break;
|
||||||
case "03" :
|
case "03":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(false) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(false);
|
||||||
break ;
|
break;
|
||||||
case "04" :
|
case "04":
|
||||||
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(true) ;
|
tempQueryBuilder = rangeQuery(formFilterItem.getField()).to(formFilterItem.getValue()).includeUpper(true);
|
||||||
break ;
|
break;
|
||||||
case "05" :
|
case "05":
|
||||||
tempQueryBuilder = termQuery(formFilterItem.getField() , formFilterItem.getValue()) ;
|
tempQueryBuilder = termQuery(formFilterItem.getField(), formFilterItem.getValue());
|
||||||
break ;
|
break;
|
||||||
case "06" :
|
case "06":
|
||||||
tempQueryBuilder = termQuery(formFilterItem.getField() , formFilterItem.getValue()) ;
|
tempQueryBuilder = termQuery(formFilterItem.getField(), formFilterItem.getValue());
|
||||||
break ;
|
break;
|
||||||
case "07" :
|
case "07":
|
||||||
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).field(formFilterItem.getField()).defaultOperator(Operator.AND) ;
|
tempQueryBuilder = new QueryStringQueryBuilder(formFilterItem.getValue()).field(formFilterItem.getField()).defaultOperator(Operator.AND);
|
||||||
break ;
|
break;
|
||||||
default :
|
default:
|
||||||
break ;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if("AND".equalsIgnoreCase(formFilterItem.getComp())) {
|
if("AND".equalsIgnoreCase(formFilterItem.getComp())) {
|
||||||
@ -177,8 +177,8 @@ public class SearchTools {
|
|||||||
|
|
||||||
return search(queryBuilder, metadataTable, false, p, ps);
|
return search(queryBuilder, metadataTable, false, p, ps);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @param orgi
|
* @param orgi
|
||||||
* @param agent
|
* @param agent
|
||||||
* @param p
|
* @param p
|
||||||
@ -238,7 +238,6 @@ public class SearchTools {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param orgi
|
* @param orgi
|
||||||
@ -262,7 +261,7 @@ public class SearchTools {
|
|||||||
strb.append(Constants.CSKEFU_SYSTEM_NO_DAT) ;
|
strb.append(Constants.CSKEFU_SYSTEM_NO_DAT) ;
|
||||||
}
|
}
|
||||||
queryBuilder.must(new QueryStringQueryBuilder(strb.toString()).defaultOperator(Operator.OR) );
|
queryBuilder.must(new QueryStringQueryBuilder(strb.toString()).defaultOperator(Operator.OR) );
|
||||||
return search(queryBuilder,0, 1);
|
return search(queryBuilder, 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -276,6 +275,7 @@ public class SearchTools {
|
|||||||
public static PageImpl<UKDataBean> search(BoolQueryBuilder queryBuilder, int p, int ps){
|
public static PageImpl<UKDataBean> search(BoolQueryBuilder queryBuilder, int p, int ps){
|
||||||
return search(queryBuilder, null, true, p, ps);
|
return search(queryBuilder, null, true, p, ps);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param queryBuilder
|
* @param queryBuilder
|
||||||
@ -287,7 +287,7 @@ public class SearchTools {
|
|||||||
*/
|
*/
|
||||||
private static PageImpl<UKDataBean> search(BoolQueryBuilder queryBuilder , MetadataTable metadataTable , boolean loadRef , int p, int ps){
|
private static PageImpl<UKDataBean> search(BoolQueryBuilder queryBuilder , MetadataTable metadataTable , boolean loadRef , int p, int ps){
|
||||||
ESDataExchangeImpl esDataExchange = MainContext.getContext().getBean(ESDataExchangeImpl.class);
|
ESDataExchangeImpl esDataExchange = MainContext.getContext().getBean(ESDataExchangeImpl.class);
|
||||||
return esDataExchange.findPageResult(queryBuilder, Constants.SYSTEM_INDEX, metadataTable, new PageRequest(p, ps , Sort.Direction.ASC, "createtime") , loadRef) ;
|
return esDataExchange.findPageResult(queryBuilder, Constants.SYSTEM_INDEX, metadataTable, new PageRequest(p, ps , Sort.Direction.ASC, "createtime") , loadRef);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -301,7 +301,7 @@ public class SearchTools {
|
|||||||
*/
|
*/
|
||||||
public static PageImpl<UKDataBean> aggregation(BoolQueryBuilder queryBuilder , String aggField, boolean loadRef , int p, int ps){
|
public static PageImpl<UKDataBean> aggregation(BoolQueryBuilder queryBuilder , String aggField, boolean loadRef , int p, int ps){
|
||||||
ESDataExchangeImpl esDataExchange = MainContext.getContext().getBean(ESDataExchangeImpl.class);
|
ESDataExchangeImpl esDataExchange = MainContext.getContext().getBean(ESDataExchangeImpl.class);
|
||||||
return esDataExchange.findAllPageAggResult(queryBuilder , aggField , new PageRequest(p, ps , Sort.Direction.ASC, "createtime") , loadRef , null) ;
|
return esDataExchange.findAllPageAggResult(queryBuilder , aggField , new PageRequest(p, ps , Sort.Direction.ASC, "createtime") , loadRef , null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user