diff --git a/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java b/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java index 5f8ccdd674..9c10c86fdd 100644 --- a/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java +++ b/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java @@ -9,6 +9,7 @@ import io.dataease.chart.constant.ChartConstants; import io.dataease.chart.manage.ChartDataManage; import io.dataease.constant.AuthConstant; import io.dataease.constant.CommonConstants; +import io.dataease.dataset.manage.PermissionManage; import io.dataease.dataset.server.DatasetFieldServer; import io.dataease.engine.constant.DeTypeConstants; import io.dataease.exception.DEException; @@ -39,7 +40,9 @@ import org.springframework.web.context.request.ServletRequestAttributes; import java.io.OutputStream; import java.util.ArrayList; import java.util.Arrays; +import java.util.HashMap; import java.util.List; +import java.util.stream.Collectors; /** * @Author Junjun @@ -56,7 +59,8 @@ public class ChartDataServer implements ChartDataApi { private VisualizationTemplateExtendDataManage extendDataManage; @Value("${dataease.export.views.limit:100000}") private Integer limit; - + @Resource + private PermissionManage permissionManage; @Resource private DatasetFieldServer datasetFieldServer; @@ -92,15 +96,17 @@ public class ChartDataServer implements ChartDataApi { if ("dataset".equals(request.getDownloadType())) { viewDTO.setType("table-info"); List sourceFields = datasetFieldServer.listByDatasetGroup(viewDTO.getTableId()); + List fileNames = permissionManage.filterColumnPermissions(sourceFields, new HashMap<>(), viewDTO.getTableId(), null).stream().map(DatasetTableFieldDTO::getDataeaseName).collect(Collectors.toList()); + sourceFields = sourceFields.stream().filter(datasetTableFieldDTO -> fileNames.contains(datasetTableFieldDTO.getDataeaseName())).collect(Collectors.toList()); dsHeader = sourceFields.stream() .map(DatasetTableFieldDTO::getName) .toArray(String[]::new); dsTypes = sourceFields.stream() .map(DatasetTableFieldDTO::getDeType) .toArray(Integer[]::new); - TypeReference> listTypeReference = new TypeReference>(){ + TypeReference> listTypeReference = new TypeReference>() { }; - viewDTO.setXAxis(JsonUtil.parseList(JsonUtil.toJSONString(sourceFields).toString(),listTypeReference)); + viewDTO.setXAxis(JsonUtil.parseList(JsonUtil.toJSONString(sourceFields).toString(), listTypeReference)); } Integer curLimit = getExportLimit(); if (ChartConstants.VIEW_RESULT_MODE.CUSTOM.equals(viewDTO.getResultMode())) { diff --git a/core/core-backend/src/main/resources/db/migration/V2.10__ddl.sql b/core/core-backend/src/main/resources/db/migration/V2.10__ddl.sql index 0edcbab71d..34d6ddff6d 100644 --- a/core/core-backend/src/main/resources/db/migration/V2.10__ddl.sql +++ b/core/core-backend/src/main/resources/db/migration/V2.10__ddl.sql @@ -69,7 +69,7 @@ alter table `core_chart_view` add ext_color longtext comment '颜色维度field'; update visualization_outer_params_target_view_info tvi INNER JOIN core_chart_view ccv on tvi.target_view_id = ccv.id - set tvi.target_ds_id = ccv.table_id + set tvi.target_ds_id = ccv.table_id; DROP TABLE IF EXISTS `core_font`; diff --git a/core/core-frontend/src/views/visualized/data/dataset/index.vue b/core/core-frontend/src/views/visualized/data/dataset/index.vue index 103918e984..52604e9c69 100644 --- a/core/core-frontend/src/views/visualized/data/dataset/index.vue +++ b/core/core-frontend/src/views/visualized/data/dataset/index.vue @@ -335,7 +335,6 @@ const exportDataset = () => { showExport.value = true exportForm.value.name = nodeInfo.name exportForm.value.expressionTree = '' - console.log(computedFiledList) nextTick(() => { rowAuth.value.init({}) rowAuth.value.relationList = []