diff --git a/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java b/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java index 9c2cfcd498..e584a53c2c 100644 --- a/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java +++ b/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java @@ -44,4 +44,9 @@ public class ChartViewController { public ChartViewDTO getData(@PathVariable String id) throws Exception { return chartViewService.getData(id); } + + @PostMapping("chartDetail/{id}") + public Map chartDetail(@PathVariable String id) { + return chartViewService.getChartDetail(id); + } } diff --git a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java index 7a902aa505..91e8d5a3dc 100644 --- a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java +++ b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java @@ -82,4 +82,8 @@ public class DataSetTableController { dataSetTableService.saveIncrementalConfig(datasetTableIncrementalConfig); } + @PostMapping("datasetDetail/{id}") + public Map datasetDetail(@PathVariable String id) { + return dataSetTableService.getDatasetDetail(id); + } } diff --git a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java index 28f0e7b4d6..5612977965 100644 --- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -20,6 +20,7 @@ import io.dataease.service.dataset.DataSetTableFieldsService; import io.dataease.service.dataset.DataSetTableService; import io.dataease.service.spark.SparkCalc; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -249,4 +250,15 @@ public class ChartViewService { throw new RuntimeException("Name can't repeat in same group."); } } + + public Map getChartDetail(String id) { + Map map = new HashMap<>(); + ChartViewWithBLOBs chartViewWithBLOBs = chartViewMapper.selectByPrimaryKey(id); + map.put("chart", chartViewWithBLOBs); + if (ObjectUtils.isNotEmpty(chartViewWithBLOBs)) { + Map datasetDetail = dataSetTableService.getDatasetDetail(chartViewWithBLOBs.getTableId()); + map.putAll(datasetDetail); + } + return map; + } } diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java index f40e017de8..0ca76754fe 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -16,6 +16,7 @@ import io.dataease.datasource.provider.ProviderFactory; import io.dataease.datasource.request.DatasourceRequest; import io.dataease.dto.dataset.DataTableInfoDTO; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -422,4 +423,15 @@ public class DataSetTableService { throw new RuntimeException("Name can't repeat in same group."); } } + + public Map getDatasetDetail(String id) { + Map map = new HashMap<>(); + DatasetTable table = datasetTableMapper.selectByPrimaryKey(id); + map.put("table", table); + if (ObjectUtils.isNotEmpty(table)) { + Datasource datasource = datasourceMapper.selectByPrimaryKey(table.getDataSourceId()); + map.put("datasource", datasource); + } + return map; + } }