diff --git a/backend/src/main/java/io/dataease/commons/utils/DatasetUtils.java b/backend/src/main/java/io/dataease/commons/utils/DatasetUtils.java new file mode 100644 index 0000000000..35b97fd3bb --- /dev/null +++ b/backend/src/main/java/io/dataease/commons/utils/DatasetUtils.java @@ -0,0 +1,26 @@ +package io.dataease.commons.utils; + +import io.dataease.dto.dataset.union.UnionDTO; +import org.apache.commons.collections4.CollectionUtils; + +import java.util.List; + +/** + * Author: wangjiahao + * Date: 2022/11/28 + * Description: + */ +public class DatasetUtils { + + public static void getUnionTable(List tableIdList, List childrenDs) { + if (CollectionUtils.isNotEmpty(childrenDs)) { + for (UnionDTO unionDTO : childrenDs) { + String tableId = unionDTO.getCurrentDs().getId(); + tableIdList.add(tableId); + if (CollectionUtils.isNotEmpty(unionDTO.getChildrenDs())) { + getUnionTable(tableIdList, unionDTO.getChildrenDs()); + } + } + } + } +} diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.java b/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.java index 88fd842d99..0f10fb6c79 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.java +++ b/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.java @@ -8,4 +8,6 @@ import java.util.List; public interface ExtDataSetTableFieldMapper { List findByPanelId(@Param("panelId") String panelId); + List findByTableIds(@Param("tableIds") List tableIds); + } diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.xml b/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.xml index f42396ed96..4aec2878ca 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.xml +++ b/backend/src/main/java/io/dataease/ext/ExtDataSetTableFieldMapper.xml @@ -7,23 +7,22 @@ + + diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.java b/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.java index a28e4145f3..4c6684cbcd 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.java +++ b/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.java @@ -11,8 +11,13 @@ public interface ExtDataSetTableMapper { List search(DataSetTableRequest request); DataSetTableDTO searchOne(DataSetTableRequest request); + DataSetTableDTO findOneDetails(@Param("datasetTableId") String datasetTableId); + List searchDataSetTableWithPanelId(@Param("panelId") String panelId, @Param("userId") String userId); + List findByPanelId(@Param("panelId") String panelId); + List findByTableIds(@Param("tableIds") List tableIds); + } diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.xml b/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.xml index a2e4df7896..deaa2f183b 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.xml +++ b/backend/src/main/java/io/dataease/ext/ExtDataSetTableMapper.xml @@ -25,7 +25,7 @@ `info`, create_by, create_time, - ( SELECT nick_name FROM sys_user WHERE sys_user.username = dataset_table.create_by ) AS creator_name + (SELECT nick_name FROM sys_user WHERE sys_user.username = dataset_table.create_by) AS creator_name from dataset_table where id = #{datasetTableId} @@ -147,4 +147,13 @@ FROM panel_view WHERE panel_id = #{panelId})) + + diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.java b/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.java index c0c320d041..91ff96757e 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.java +++ b/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.java @@ -1,8 +1,8 @@ package io.dataease.ext; -import io.dataease.ext.query.GridExample; import io.dataease.dto.dataset.DataSetTaskDTO; import io.dataease.dto.dataset.DataSetTaskLogDTO; +import io.dataease.ext.query.GridExample; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -25,4 +25,6 @@ public interface ExtDataSetTaskMapper { List taskWithTriggers(GridExample example); List findByPanelId(@Param("panelId") String panelId); + + List findByTableIds(@Param("tableIds") List tableIds); } diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.xml b/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.xml index b073d3c111..2680c1875c 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.xml +++ b/backend/src/main/java/io/dataease/ext/ExtDataSetTaskMapper.xml @@ -8,19 +8,21 @@ - + - SELECT dataset_table_task_log.*, dataset_table_task.name, dataset_table.name as dataset_name FROM dataset_table_task_log LEFT JOIN dataset_table_task ON dataset_table_task_log.task_id = dataset_table_task.id LEFT JOIN dataset_table ON dataset_table_task_log.table_id = dataset_table.id - + order by ${orderByClause} @@ -30,13 +32,14 @@ - SELECT dataset_table_task_log.*, dataset_table_task.name, dataset_table.name as dataset_name FROM dataset_table_task_log LEFT JOIN dataset_table_task ON dataset_table_task_log.task_id = dataset_table_task.id LEFT JOIN dataset_table ON dataset_table_task_log.table_id = dataset_table.id - + order by ${orderByClause} @@ -47,12 +50,13 @@ + + - diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.java b/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.java index d9d1b687e0..18e91bf687 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.java +++ b/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.java @@ -1,8 +1,8 @@ package io.dataease.ext; -import io.dataease.ext.query.GridExample; import io.dataease.controller.request.DatasourceUnionRequest; import io.dataease.dto.DatasourceDTO; +import io.dataease.ext.query.GridExample; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -15,7 +15,9 @@ public interface ExtDataSourceMapper { List findByPanelId(@Param("panelId") String panelId); - DatasourceDTO queryDetails(@Param("datasourceId") String datasourceId,@Param("userId") String userId); + List findByTableIds(@Param("tableIds") List tableIds); + + DatasourceDTO queryDetails(@Param("datasourceId") String datasourceId, @Param("userId") String userId); } diff --git a/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.xml b/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.xml index 10ce945c85..782da6288a 100644 --- a/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.xml +++ b/backend/src/main/java/io/dataease/ext/ExtDataSourceMapper.xml @@ -130,6 +130,19 @@ WHERE panel_view.panel_id = #{panelId} + +