-- [BI模块] - 王坤 - 20230208 - 添加幻灯片功能
drop table if exists `visual_power_point_info`;
CREATE TABLE `visual_power_point_info`
(
    `id`             int(11) NOT NULL AUTO_INCREMENT,
    `cate_id`        int(11) NOT NULL COMMENT '分类ID',
    `pp_name`        varchar(100) NOT NULL COMMENT '幻灯片名称',
    `pp_month`       varchar(100) COMMENT '幻灯片月份',
    `settings`       varchar(1000) DEFAULT NULL COMMENT '幻灯片设置',
    `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
    `create_time`    datetime     NOT NULL COMMENT '创建时间',
    `update_by`      varchar(100)  DEFAULT NULL COMMENT '修改人',
    `update_time`    datetime     NOT NULL COMMENT '修改时间',
    PRIMARY KEY (`id`)
) COMMENT='幻灯片信息';

drop table if exists `visual_power_point_category`;
CREATE TABLE `visual_power_point_category`
(
    `id`             int(11) NOT NULL AUTO_INCREMENT,
    `parent_id`      int(11) NOT NULL DEFAULT '0' COMMENT '父级ID',
    `cate_name`      varchar(100) NOT NULL COMMENT '分类名称',
    `sort_num`       int(11) NOT NULL DEFAULT '0' COMMENT '排序号',
    `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
    `create_time`    datetime     NOT NULL COMMENT '创建时间',
    PRIMARY KEY (`id`)
) COMMENT='幻灯片分类';

drop table if exists `visual_power_point_permission`;
CREATE TABLE `visual_power_point_permission`
(
    `id`             int(11) NOT NULL AUTO_INCREMENT,
    `pp_id`          int(11) NOT NULL COMMENT '幻灯片ID',
    `data_perm_id`   int(11) NOT NULL COMMENT '权限组ID',
    `create_time`    datetime    NOT NULL COMMENT '创建时间',
    `create_by`      varchar(50) NOT NULL COMMENT '创建人',
    `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
    PRIMARY KEY (`id`)
) COMMENT='幻灯片权限组表';

-- [BI模块] - 王坤 - 20230211- 添加自定义组件功能
drop table if exists visual_component_define;
create table visual_component_define
(
    id                int primary key auto_increment,
    component_name    varchar(100) not null comment '组件名称',
    image_url         varchar(100) comment '组件图标',
    description       varchar(500) comment '组件描述',
    component_version varchar(50) comment '组件版本号',
    code_text         text comment '代码内容',
    publish_status    tinyint      not null default 0 comment '是否发布(0-否[默认]/1-是)',
    view_scope_status tinyint      not null default 0 comment '可视范围状态(0-个人[默认]/1-公开)',
    create_time       datetime     not null comment '创建时间',
    create_user_id    bigint       not null comment '创建人',
    update_time       datetime     not null comment '修改时间',
    update_by         varchar(50) comment '修改人'
) comment '自定义组件';

-- [BI模块] - 王坤 - 20230214- 数据源添加责任人字段
alter table report_datasource
    add column responsible_person_id bigint comment '责任人ID',
add column responsible_person_name varchar(50) comment '责任人姓名';

-- [BI模块] - 王坤 - 20230220- 添加数据集全局过滤器功能
drop table if exists cube_global_param;
CREATE TABLE `cube_global_param`
(
    `id`                int(11) NOT NULL AUTO_INCREMENT,
    `type_id`           int(11) NOT NULL COMMENT '参数分类',
    `param_name`        varchar(30) NOT NULL COMMENT '参数名称',
    `param_key`         varchar(20)  DEFAULT NULL COMMENT '页面参数名',
    `param_column_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '参数字段类型(0-数字/1-字符串)',
    `param_type`        tinyint(4) NOT NULL COMMENT '参数类型(0-业务参数/1-系统参数)',
    `remark`            varchar(500) DEFAULT NULL COMMENT '备注说明',
    `create_time`       datetime    NOT NULL COMMENT '创建时间',
    `create_user_id`    bigint(20) NOT NULL COMMENT '创建人ID',
    `create_by`         varchar(20)  DEFAULT NULL COMMENT '创建人',
    PRIMARY KEY (`id`),
    UNIQUE KEY `param_key` (`param_key`)
) COMMENT='数据集全局变量';

drop table if exists cube_global_param_type;
CREATE TABLE `cube_global_param_type`
(
    `id`             int(11) NOT NULL AUTO_INCREMENT,
    `parent_id`      int(11) NOT NULL COMMENT '父级ID',
    `type_name`      varchar(100) NOT NULL COMMENT '分类名称',
    `sort_num`       int(11) DEFAULT '0' COMMENT '排序号',
    `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
    `create_time`    datetime     NOT NULL COMMENT '创建时间',
    PRIMARY KEY (`id`)
) COMMENT='数据集全局筛选器参数-分类表';