##数据字典表
# 字典类型
DROP TABLE IF EXISTS `dic_dt_type`;
create table dic_dt_type
(
    id varchar(20) not null primary key,
    group_code varchar(20) null comment '集团编码',
    type varchar(40) not null comment '字典类型',
    name varchar(40) not null comment '字典类型名称',
    description varchar(200) null comment '描述',
    status int not null comment '状态',
    create_time timestamp null comment '创建时间',
    create_user varchar(40) null comment '创建用户',
    update_time timestamp null comment '更新时间',
    update_user varchar(40) null comment '更新用户',
    remark varchar(200) null comment '备注'
) comment '字典类型';

# 字典数据
DROP TABLE IF EXISTS `dic_dt_data`;
create table dic_dt_data
(
    id varchar(20) not null primary key ,
    dict_type_id varchar(20) not null comment '字典类型ID',
    parent_id varchar(20) null comment '父节点',
    type varchar(40) not null comment '字典类型',
    code varchar(40) not null comment '字典数据编码',
    label varchar(40) not null comment '字典数据标签',
    status int not null comment '状态',
    create_time timestamp null comment '创建时间',
    create_user varchar(40) null comment '创建用户',
    update_time timestamp null comment '更新时间',
    update_user varchar(40) null comment '更新用户',
    remark varchar(200) null
) comment '字典数据';

# 字典数据映射
DROP TABLE IF EXISTS `dic_dt_data_map`;
create table dic_dt_data_map
(
    id varchar(20) not null primary key ,
    dict_data_id varchar(20) not null comment '字典数据ID',
    type varchar(40) not null comment '字典类型',
    group_code varchar(20) not null comment '集团编码',
    target_code varchar(20) not null comment '映射字典数据表code',
    label varchar(40) not null comment '字典数据标签',
    code varchar(40) not null comment '字典数据编码',
    status int not null comment '状态',
    create_time timestamp null comment '创建时间',
    create_user varchar(40) null comment '创建用户',
    update_time timestamp null comment '更新时间',
    update_user varchar(40) null comment '更新用户',    
    remark varchar(200) null comment '备注'
) comment '字典数据映射';

# 知识库类型
DROP TABLE IF EXISTS `dic_kl_type`;
create table dic_kl_type
(
    id varchar(20) not null primary key ,
    code varchar(40) not null comment '知识库编码',
    name varchar(40) not null comment '知识库名称',
    description varchar(500) null comment '描述',
    status int not null comment '状态',
    create_time timestamp null comment '创建时间',
    create_user varchar(40) null comment '创建用户',
    update_time timestamp null comment '更新时间',
    update_user varchar(40) null comment '更新用户',    
    remark varchar(200) null comment '备注'
) comment '知识库类型';

# 知识库数据
DROP TABLE IF EXISTS `dic_kl_data`;
create table dic_kl_data
(
    id varchar(20) not null primary key ,
    kl_type_code varchar(20) not null comment '知识库类型编码',
    kl_type_name varchar(40) not null comment '知识库类型名称',
    parent_id varchar(20) null comment '父节点',
    code varchar(40) not null comment '知识库数据编码',
    label varchar(40) not null comment '知识库数据标签',
    value varchar(500) null comment '知识库数据内容',
    status int not null comment '状态',
    create_time timestamp null comment '创建时间',
    create_user varchar(40) null comment '创建用户',
    update_time timestamp null comment '更新时间',
    update_user varchar(40) null comment '更新用户',    
    remark varchar(200) null comment '备注'
) comment '知识库数据';