diff --git a/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/KbsTopicRepositoryImpl.java b/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/KbsTopicRepositoryImpl.java index 040ac1e9..b7eab325 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/KbsTopicRepositoryImpl.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/KbsTopicRepositoryImpl.java @@ -36,15 +36,16 @@ import java.util.List; import static org.elasticsearch.index.query.QueryBuilders.termQuery; @Component -public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{ - private ElasticsearchTemplate elasticsearchTemplate; +public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository { + private ElasticsearchTemplate elasticsearchTemplate; - @Autowired - public void setElasticsearchTemplate(ElasticsearchTemplate elasticsearchTemplate) { + @Autowired + public void setElasticsearchTemplate(ElasticsearchTemplate elasticsearchTemplate) { this.elasticsearchTemplate = elasticsearchTemplate; } - @Override - public Page getTopicByCate(String cate , String q, final int p , final int ps) { + + @Override + public Page getTopicByCate(String cate, String q, final int p, final int ps) { Page pages = null; @@ -63,17 +64,16 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{ return pages; } - @SuppressWarnings("deprecation") - @Override - public Page getTopicByTop(boolean top , final int p , final int ps) { + @Override + public Page getTopicByTop(boolean top, final int p, final int ps) { - Page pages = null ; + Page pages = null; BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); boolQueryBuilder.must(termQuery("top", top)); - 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 beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime())); + QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("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)); @@ -85,8 +85,8 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{ return pages; } - @Override - public Page getTopicByCateAndUser(String cate , String q , String user ,final int p , final int ps) { + @Override + public Page getTopicByCateAndUser(String cate, String q, String user, final int p, final int ps) { Page pages = null; @@ -105,14 +105,13 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{ return pages; } - @SuppressWarnings("deprecation") - @Override - public Page getTopicByCon(BoolQueryBuilder boolQueryBuilder, final int p , final int ps) { + @Override + public Page getTopicByCon(BoolQueryBuilder boolQueryBuilder, final int p, final int ps) { Page pages = null; - 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 beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime())); + QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("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)); @@ -122,27 +121,28 @@ public class KbsTopicRepositoryImpl implements KbsTopicEsCommonRepository{ } return pages; } - @Override - public List getTopicByOrgi(String orgi , String type, String q) { - List list = null ; + @Override + public List getTopicByOrgi(String orgi, String type, String q) { - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); - boolQueryBuilder.must(termQuery("orgi" , orgi)) ; + List list = null; - if(!StringUtils.isBlank(type)){ - boolQueryBuilder.must(termQuery("cate" , type)) ; - } + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + boolQueryBuilder.must(termQuery("orgi", orgi)); - if (!StringUtils.isBlank(q)) { - boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)); - } + if (!StringUtils.isBlank(type)) { + boolQueryBuilder.must(termQuery("cate", type)); + } - 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(); - if (elasticsearchTemplate.indexExists(KbsTopic.class)) { - list = elasticsearchTemplate.queryForList(searchQuery, KbsTopic.class); - } - return list; - } + if (!StringUtils.isBlank(q)) { + 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)); + SearchQuery searchQuery = searchQueryBuilder.build(); + if (elasticsearchTemplate.indexExists(KbsTopic.class)) { + list = elasticsearchTemplate.queryForList(searchQuery, KbsTopic.class); + } + return list; + } } diff --git a/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/QuickReplyRepositoryImpl.java b/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/QuickReplyRepositoryImpl.java index 99b6ccb9..942dbdc9 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/QuickReplyRepositoryImpl.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/QuickReplyRepositoryImpl.java @@ -138,14 +138,13 @@ public class QuickReplyRepositoryImpl implements QuickReplyEsCommonRepository{ return pages; } - @SuppressWarnings("deprecation") @Override public Page getByCon(BoolQueryBuilder boolQueryBuilder, final int p , final int ps) { Page pages = null; - 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 beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").from(new Date().getTime())); + QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("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)); diff --git a/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/TopicRepositoryImpl.java b/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/TopicRepositoryImpl.java index 3aac8aa5..361d17dc 100644 --- a/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/TopicRepositoryImpl.java +++ b/contact-center/app/src/main/java/com/chatopera/cc/persistence/es/TopicRepositoryImpl.java @@ -37,22 +37,23 @@ import java.util.List; import static org.elasticsearch.index.query.QueryBuilders.termQuery; @Component -public class TopicRepositoryImpl implements TopicEsCommonRepository{ - private ElasticsearchTemplate elasticsearchTemplate; +public class TopicRepositoryImpl implements TopicEsCommonRepository { + private ElasticsearchTemplate elasticsearchTemplate; - @Autowired - public void setElasticsearchTemplate(ElasticsearchTemplate elasticsearchTemplate) { + @Autowired + public void setElasticsearchTemplate(ElasticsearchTemplate elasticsearchTemplate) { this.elasticsearchTemplate = elasticsearchTemplate; } - @Override - public Page getTopicByCateAndOrgi(String cate ,String orgi, String q, final int p , final int ps) { - Page pages = null ; + @Override + public Page getTopicByCateAndOrgi(String cate, String orgi, String q, final int p, final int ps) { - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); - if(!StringUtils.isBlank(cate)) { - boolQueryBuilder.must(termQuery("cate" , cate)) ; - } + Page pages = null; + + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + if (!StringUtils.isBlank(cate)) { + boolQueryBuilder.must(termQuery("cate", cate)); + } boolQueryBuilder.must(termQuery("orgi", orgi)); if (!StringUtils.isBlank(q)) { boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)); @@ -66,21 +67,20 @@ public class TopicRepositoryImpl implements TopicEsCommonRepository{ return pages; } - @SuppressWarnings("deprecation") - @Override - public Page getTopicByTopAndOrgi(boolean top ,String orgi, String aiid ,final int p , final int ps) { + @Override + public Page getTopicByTopAndOrgi(boolean top, String orgi, String aiid, final int p, final int ps) { - Page pages = null ; + Page pages = null; - BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); - boolQueryBuilder.must(termQuery("top" , top)) ; - boolQueryBuilder.must(termQuery("orgi" , orgi)) ; - if(!StringUtils.isBlank(aiid)) { - boolQueryBuilder.must(termQuery("aiid" , aiid)) ; - } + BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); + boolQueryBuilder.must(termQuery("top", top)); + boolQueryBuilder.must(termQuery("orgi", orgi)); + if (!StringUtils.isBlank(aiid)) { + boolQueryBuilder.must(termQuery("aiid", aiid)); + } - 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 beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").to(new Date().getTime())); + QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("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)); @@ -94,12 +94,12 @@ public class TopicRepositoryImpl implements TopicEsCommonRepository{ } @Override - public Page getTopicByCateAndUser(String cate , String q , String user ,final int p , final int ps) { + public Page getTopicByCateAndUser(String cate, String q, String user, final int p, final int ps) { - Page pages = null ; + Page pages = null; BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); - boolQueryBuilder.must(termQuery("cate" , cate)) ; + boolQueryBuilder.must(termQuery("cate", cate)); if (!StringUtils.isBlank(q)) { boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND)); @@ -113,14 +113,13 @@ public class TopicRepositoryImpl implements TopicEsCommonRepository{ return pages; } - @SuppressWarnings("deprecation") - @Override - public Page getTopicByCon(BoolQueryBuilder boolQueryBuilder, final int p , final int ps) { + @Override + public Page getTopicByCon(BoolQueryBuilder boolQueryBuilder, final int p, final int ps) { Page pages = null; - 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 beginFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("begintime")).should(QueryBuilders.rangeQuery("begintime").to(new Date().getTime())); + QueryBuilder endFilter = QueryBuilders.boolQuery().should(QueryBuilders.existsQuery("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)); SearchQuery searchQuery = searchQueryBuilder.build().setPageable(PageRequest.of(p, ps)); @@ -129,17 +128,18 @@ public class TopicRepositoryImpl implements TopicEsCommonRepository{ } return pages; } - @Override - public List getTopicByOrgi(String orgi , String type, String q) { - List list = null ; + @Override + public List getTopicByOrgi(String orgi, String type, String q) { + + List list = null; BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); - boolQueryBuilder.must(termQuery("orgi" , orgi)) ; + boolQueryBuilder.must(termQuery("orgi", orgi)); - if(!StringUtils.isBlank(type)){ - boolQueryBuilder.must(termQuery("cate" , type)) ; - } + if (!StringUtils.isBlank(type)) { + boolQueryBuilder.must(termQuery("cate", type)); + } if (!StringUtils.isBlank(q)) { boolQueryBuilder.must(new QueryStringQueryBuilder(q).defaultOperator(Operator.AND));