From df944e241e220a63d18462f0b03d00d97f6d8a76 Mon Sep 17 00:00:00 2001 From: gaoqr <13665037151@163.com> Date: Fri, 15 May 2026 17:59:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E6=A8=A1=E5=9D=97mycat?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E6=97=A0=E6=B3=95=E8=B7=AF=E7=94=B1=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dal/mysql/dataset/ReportDatasetMapper.java | 7 +++++-- .../service/template/ReportTemplateServiceImpl.java | 12 ++++++++---- .../imes/module/report/utils/TenantParamsUtils.java | 2 +- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/dal/mysql/dataset/ReportDatasetMapper.java b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/dal/mysql/dataset/ReportDatasetMapper.java index 52f2ac652..c499e5806 100644 --- a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/dal/mysql/dataset/ReportDatasetMapper.java +++ b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/dal/mysql/dataset/ReportDatasetMapper.java @@ -24,7 +24,10 @@ public interface ReportDatasetMapper extends BaseMapperX { * @return */ @OrganIgnore - default List selectNormalDatasetList(Set datasetIds) { - return selectList(new LambdaQueryWrapperX().in(ReportDatasetDO::getId, datasetIds)); + default List selectNormalDatasetList(Set datasetIds, Long organId) { + return selectList(new LambdaQueryWrapperX() + .eq(ReportDatasetDO::getOrganId, organId) + .in(ReportDatasetDO::getId, datasetIds) + ); } } diff --git a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java index 61e4449bf..85f36fc90 100644 --- a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java +++ b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/service/template/ReportTemplateServiceImpl.java @@ -343,19 +343,21 @@ public class ReportTemplateServiceImpl implements ReportTemplateService { * @param reportDefinition 报表定义 */ private void queryDatasource(ReportTemplateDO templateDO, ReportDefinition reportDefinition) { + Long organId = SecurityFrameworkUtils.getUserOrganId(); + Set datasourceIds = templateDO.getDatasourceIds(); Set datasetIds = templateDO.getDatasetIds(); List reportDatasourceDOS = new ArrayList<>(); if (CollUtil.isNotEmpty(datasourceIds)) { // 查询模板下的数据源 - reportDatasourceDOS = datasourceMapper.selectNormalDatasourceList(datasourceIds, SecurityFrameworkUtils.getUserOrganId()); + reportDatasourceDOS = datasourceMapper.selectNormalDatasourceList(datasourceIds, organId); } List reportDatasetDOS = new ArrayList<>(); if (CollUtil.isNotEmpty(datasetIds)) { // 查询模板下的数据集 - reportDatasetDOS = datasetMapper.selectNormalDatasetList(datasetIds); + reportDatasetDOS = datasetMapper.selectNormalDatasetList(datasetIds, organId); } // 转换ureport对象后的数据源列表 List datasourceDefinitions = new ArrayList<>(); @@ -452,6 +454,8 @@ public class ReportTemplateServiceImpl implements ReportTemplateService { * @param reportDefinition 报表定义 */ private void queryPreviewDatasource(Map query, ReportDefinition reportDefinition) { + Long organId = SecurityFrameworkUtils.getUserOrganId(); + Object datasetIdsObj = query.get(DATASETIDS_FIELD_NAME); Object datasourceIdsObj = query.get(DATASOURCEIDS_FIELD_NAME); @@ -465,13 +469,13 @@ public class ReportTemplateServiceImpl implements ReportTemplateService { if (ObjectUtil.isNotNull(datasourceIdsObj)) { List datasourceIds = (List) datasourceIdsObj; // 查询模板下的数据源 - reportDatasourceDOS = datasourceMapper.selectNormalDatasourceList(new HashSet<>(datasourceIds), SecurityFrameworkUtils.getUserOrganId()); + reportDatasourceDOS = datasourceMapper.selectNormalDatasourceList(new HashSet<>(datasourceIds), organId); } List reportDatasetDOS = new ArrayList<>(); if (CollUtil.isNotEmpty(datasetIds)) { // 查询模板下的数据集 - reportDatasetDOS = datasetMapper.selectNormalDatasetList(new HashSet<>(datasetIds)); + reportDatasetDOS = datasetMapper.selectNormalDatasetList(new HashSet<>(datasetIds), organId); } // 转换ureport对象后的数据源列表 List datasourceDefinitions = new ArrayList<>(); diff --git a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/utils/TenantParamsUtils.java b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/utils/TenantParamsUtils.java index f2ea196bc..670e76c16 100644 --- a/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/utils/TenantParamsUtils.java +++ b/cf-module-report/cf-module-report-biz/src/main/java/com/cf/imes/module/report/utils/TenantParamsUtils.java @@ -79,7 +79,7 @@ public class TenantParamsUtils { // 内置数据集名称列表 List buildinDsNames = new ArrayList<>(); // 遍历获取所有上级数据源 - List reportDatasetDOS = datasetMapper.selectNormalDatasetList(datasetIds.stream().collect(Collectors.toSet())); + List reportDatasetDOS = datasetMapper.selectNormalDatasetList(datasetIds.stream().collect(Collectors.toSet()), userOrganId); for (ReportDatasetDO datasetDO : reportDatasetDOS) { Long datasourceId = datasetDO.getDatasourceId(); // 查询数据源,如果是内置数据源则把数据集的name传给ureport