From 0843b0b7418acc7507b15dd9eb245936eb7b4efb Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Wed, 26 Jun 2024 10:38:32 +0800 Subject: [PATCH] =?UTF-8?q?feat(XPack):=20=E5=AE=9A=E6=97=B6=E6=8A=A5?= =?UTF-8?q?=E5=91=8A=E6=94=AF=E6=8C=81=E8=87=AA=E5=AE=9A=E4=B9=89=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E7=BB=84=E4=BB=B6=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/core-backend/pom.xml | 10 ------- .../main/resources/db/migration/V2.8__ddl.sql | 16 ++++++++++- .../src/utils/CanvasInfoTransUtils.ts | 27 +++++++++++++++++++ null/VisualizationReportFilterController.java | 18 +++++++++++++ null/VisualizationReportFilterMapper.xml | 5 ++++ .../VisualizationReportFilterServiceImpl.java | 20 ++++++++++++++ 6 files changed, 85 insertions(+), 11 deletions(-) create mode 100644 core/core-frontend/src/utils/CanvasInfoTransUtils.ts create mode 100644 null/VisualizationReportFilterController.java create mode 100644 null/VisualizationReportFilterMapper.xml create mode 100644 null/VisualizationReportFilterServiceImpl.java diff --git a/core/core-backend/pom.xml b/core/core-backend/pom.xml index 922e1ac258..f648cd5038 100644 --- a/core/core-backend/pom.xml +++ b/core/core-backend/pom.xml @@ -117,16 +117,6 @@ - - io.dataease - xpack-permissions - ${project.version} - - - io.dataease - xpack-base - ${project.version} - com.h2database h2 diff --git a/core/core-backend/src/main/resources/db/migration/V2.8__ddl.sql b/core/core-backend/src/main/resources/db/migration/V2.8__ddl.sql index 6dcf4ba043..6f4a6902cb 100644 --- a/core/core-backend/src/main/resources/db/migration/V2.8__ddl.sql +++ b/core/core-backend/src/main/resources/db/migration/V2.8__ddl.sql @@ -33,4 +33,18 @@ CREATE TABLE `core_share_ticket` `args` longtext COMMENT 'ticket参数', `access_time` bigint DEFAULT NULL COMMENT '首次访问时间', PRIMARY KEY (`id`) -) COMMENT ='分享Ticket表'; \ No newline at end of file +) COMMENT ='分享Ticket表'; + +DROP TABLE IF EXISTS `visualization_report_filter`; +CREATE TABLE `visualization_report_filter` ( + `id` bigint NOT NULL COMMENT '报告ID', + `resource_id` bigint DEFAULT NULL COMMENT '资源id', + `dv_type` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '资源类型', + `component_id` bigint DEFAULT NULL COMMENT '组件id', + `filter_id` bigint DEFAULT NULL COMMENT '过滤项id', + `filter_info` longtext COLLATE utf8mb4_general_ci COMMENT '过滤组件内容', + `filter_version` int DEFAULT NULL COMMENT '过滤组件版本', + `create_time` bigint DEFAULT NULL COMMENT '创建时间', + `create_user` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', + PRIMARY KEY (`id`) +); \ No newline at end of file diff --git a/core/core-frontend/src/utils/CanvasInfoTransUtils.ts b/core/core-frontend/src/utils/CanvasInfoTransUtils.ts new file mode 100644 index 0000000000..075ec9a493 --- /dev/null +++ b/core/core-frontend/src/utils/CanvasInfoTransUtils.ts @@ -0,0 +1,27 @@ +import { deepCopy } from '@/utils/utils' + +export default function defaultConditionTrans(canvasInfo) { + const { reportFilterInfo, componentData } = canvasInfo + const componentDataArray = JSON.parse(componentData) + const allFilter = [] + // 获取所有查询条件 + componentDataArray.forEach(item => { + if (item.component === 'VQuery') { + Array.prototype.push.apply(allFilter, item.propValue) + } + }) + + const allDefaultFilter = deepCopy(allFilter) + if (reportFilterInfo) { + allFilter.forEach((itemFilter, index) => { + if (reportFilterInfo[itemFilter.id]) { + allDefaultFilter.splice(index, 1, JSON.parse(reportFilterInfo[itemFilter.id])) + } + }) + } + + return { + sourceFilter: allFilter, + defaultFilter: allDefaultFilter + } +} diff --git a/null/VisualizationReportFilterController.java b/null/VisualizationReportFilterController.java new file mode 100644 index 0000000000..2b48922c26 --- /dev/null +++ b/null/VisualizationReportFilterController.java @@ -0,0 +1,18 @@ +package io.dataease.visualization.dao.auto.controller; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.stereotype.Controller; + +/** + *

+ * 前端控制器 + *

+ * + * @author fit2cloud + * @since 2024-06-25 + */ +@Controller +@RequestMapping("/visualizationReportFilter") +public class VisualizationReportFilterController { + +} diff --git a/null/VisualizationReportFilterMapper.xml b/null/VisualizationReportFilterMapper.xml new file mode 100644 index 0000000000..4e22897581 --- /dev/null +++ b/null/VisualizationReportFilterMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/null/VisualizationReportFilterServiceImpl.java b/null/VisualizationReportFilterServiceImpl.java new file mode 100644 index 0000000000..fd02dcac10 --- /dev/null +++ b/null/VisualizationReportFilterServiceImpl.java @@ -0,0 +1,20 @@ +package io.dataease.visualization.dao.auto.service.impl; + +import io.dataease.visualization.dao.auto.entity.VisualizationReportFilter; +import io.dataease.visualization.dao.auto.mapper.VisualizationReportFilterMapper; +import io.dataease.visualization.dao.auto.service.IVisualizationReportFilterService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author fit2cloud + * @since 2024-06-25 + */ +@Service +public class VisualizationReportFilterServiceImpl extends ServiceImpl implements IVisualizationReportFilterService { + +}