From ac42a232f23af9197661c60cc9b9ca2af808ff36 Mon Sep 17 00:00:00 2001 From: daihh Date: Sat, 22 Oct 2022 19:50:59 +0800 Subject: [PATCH] =?UTF-8?q?ES=E9=92=88=E5=AF=B9=E4=BA=8EcompanyId=E7=9A=84?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elasticsearc/CourseElasticsearchImpl.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) 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 2cb5b843..892dd4dc 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 @@ -282,11 +282,20 @@ public class CourseElasticsearchImpl implements ICourseFullTextSearch{ } //增加companyId过滤 if(StringUtils.isNotBlank(params.getCompanyId())) { - boolQuery.filter(QueryBuilders.termQuery("companyId", params.getCompanyId())); + BoolQueryBuilder companyFilter= QueryBuilders.boolQuery(); + companyFilter.should(QueryBuilders.termQuery("source",2));//新系统的数据 + + BoolQueryBuilder old= QueryBuilders.boolQuery(); + old.must(QueryBuilders.termQuery("source",1));//必须是老系统的数据 + old.must(QueryBuilders.termQuery("companyId",params.getCompanyId()));//必须是老系统的数据 + companyFilter.should(old); + + companyFilter.minimumShouldMatch(1); + boolQuery.filter(companyFilter); } - //加上Source判断,是为了应对后台查询,后台查询时,不需要权限,但是需要指定数据来源 + //加上Source判断,是为了应对后台查询,后台查询时,不需要权限,但是需要指定数据来源 if(params.getSource()==null || params.getSource()==0 ) { //受众权限条件,必须是有受众的课程并且受众条件不为空 if(params.getAudiences()!=null && params.getAudiences().length>0) {