diff --git a/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java b/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java index 86b789a3..91e08fe5 100644 --- a/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java +++ b/modules/boe-module-es/src/main/java/com/xboe/module/elasticsearc/CourseElasticsearchImpl.java @@ -361,22 +361,25 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ if(params.getAudiences()!=null && params.getAudiences().length>0) { //if(StringUtils.isNotBlank(params.getAudience())) { BoolQueryBuilder audience= QueryBuilders.boolQuery(); -// audience.should(QueryBuilders.termQuery("isSetAudience",0)); + audience.should(QueryBuilders.termQuery("isSetAudience",0)); BoolQueryBuilder has= QueryBuilders.boolQuery(); //String[] ids=params.getAudience().split(","); has.must(QueryBuilders.termQuery("isSetAudience",1)); //has.must(QueryBuilders.termsQuery("audience", ids)); has.must(QueryBuilders.termsQuery("audiences", params.getAudiences())); + //查询出例外人员创建的课程 + BoolQueryBuilder exception =QueryBuilders.boolQuery(); + exception.must(QueryBuilders.termQuery("sysCreateAid",params.getSysCreateAids())); + audience.should(exception); audience.should(has); - audience.minimumShouldMatch(1); boolQuery.filter(audience); //log.error("audience="+audience.toString()); }else { //如果当前用户无受众,只能查询未设置受众的课程 -// boolQuery.must(QueryBuilders.termQuery("isSetAudience",0)); + boolQuery.must(QueryBuilders.termQuery("isSetAudience",0)); } } @@ -611,12 +614,7 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ if(boolQuery.hasClauses()) { sourceBuilder.query(boolQuery); } -// 查出例外人员 - if(paras.getSysCreateAids()!=null&¶s.getSysCreateAids().length>0){ - BoolQueryBuilder builder= QueryBuilders.boolQuery(); - builder.should(QueryBuilders.termsQuery("sysCreateAid",paras.getSysCreateAids())); - sourceBuilder.query(builder); - } +