
ALTER TABLE `enforcement_registration`
    ADD COLUMN `has_evaluate` tinyint(1) DEFAULT 0 COMMENT '是否评价：0-未评价 1-已评价' AFTER `is_real_union`;

ALTER TABLE `enforcement_registration`
    ADD COLUMN `law_case_id` bigint DEFAULT NULL COMMENT '执法案件ID' AFTER `is_real_union`;
-- 已评价需要初始化数据
UPDATE enforcement_registration er
    JOIN enterprise_evaluate ee ON er.id = ee.enforcement_id
    SET er.has_evaluate = 1;

-- 初始化登录信息
INSERT INTO `sys_client` ( `id`, `client_id`, `client_key`, `client_secret`, `grant_type`, `device_type`, `active_timeout`, `timeout`, `status`, `del_flag`, `create_dept`, `create_by`, `create_time`, `update_by`, `update_time` )
VALUES
( 3, '9e6eb24cd4e169a98b0d2cd8034d877b', 'enterprise_app', 'enterprise_app_123', 'password,social', 'android', 1800, 604800, '0', '0', '103', 1, NOW(),1, NOW() );

INSERT INTO `sys_client` ( `id`, `client_id`, `client_key`, `client_secret`, `grant_type`, `device_type`, `active_timeout`, `timeout`, `status`, `del_flag`, `create_dept`, `create_by`, `create_time`, `update_by`, `update_time` )
VALUES
( 4, 'f0535c2a32ab4d0496ab9a699b2a7d36', 'enforcement_app', 'enforcement_app_123', 'password,social', 'android', 1800, 604800, '0', '0', '103', 1, NOW(), 1, NOW() );


DROP TABLE IF EXISTS `todo_item`;
CREATE TABLE `todo_item` (
                             `id` varchar(50) NOT NULL COMMENT '主键ID',
                             `client_type` varchar(16) NOT NULL COMMENT '客户端类型：enterprise-企业端, law-执法端, supervise-监督端',
                             `type` varchar(16) DEFAULT NULL COMMENT '类型：PFFW｜普法服务,ZFPJ-执法评价,ZFYG-预告，RW-任务，YY-预约',
                             `source_id` bigint(20) DEFAULT NULL COMMENT '记录来源ID（关联业务表主键）',
                             `enterprise_id` varchar(50) DEFAULT NULL COMMENT '被执法企业ID',
                             `credit_code` varchar(32) DEFAULT NULL COMMENT '企业统一社会信用代码',
                             `agent_user_id` varchar(50) DEFAULT NULL COMMENT '待办人员ID',
                             `read_status` tinyint(4) DEFAULT '0' COMMENT '阅读状态：0未读 1已读',
                             `effective_time` datetime DEFAULT NULL COMMENT '生效时间',
                             `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
                             `create_by_name` varchar(64) DEFAULT NULL COMMENT '创建者名称',
                             `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                             `create_dept` varchar(50) DEFAULT NULL COMMENT '创建人部门',
                             `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
                             `update_by_name` varchar(64) DEFAULT NULL COMMENT '更新者名称',
                             `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                             `is_delete` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除 0=否 1=是',
                             `remark` varchar(255) DEFAULT NULL COMMENT '备注',
                             PRIMARY KEY (`id`) USING BTREE,
                             UNIQUE KEY `uk_client_type_source` (`client_type`,`type`,`source_id`) USING BTREE COMMENT '客户端+类型+来源ID 唯一索引',
                             KEY `idx_credit_code` (`credit_code`) USING BTREE COMMENT '企业信用代码索引',
                             KEY `idx_agent_user_id` (`agent_user_id`) USING BTREE COMMENT '待办人员ID索引'
) ENGINE=InnoDB COMMENT='待办事项表';


DROP TABLE IF EXISTS `enforcement_education_services`;
CREATE TABLE `enforcement_education_services` (
                                                  `id` varchar(50) NOT NULL COMMENT '主键ID',
                                                  `title` varchar(200) NOT NULL COMMENT '标题',
                                                  `publish_dept_ids` varchar(255) NOT NULL COMMENT '发布部门ID(多个用逗号分隔)',
                                                  `publish_dept_names` varchar(255) NOT NULL COMMENT '发布部门名称(冗余存储)',
                                                  `target_platform` tinyint(4) NOT NULL COMMENT '发布平台 0-全部 1-监督端 2-执法端 3-企业端',
                                                  `content_type` tinyint(4) DEFAULT NULL COMMENT '内容分类',
                                                  `source_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '来源类型 1｜原生 2｜转载',
                                                  `content` longtext COMMENT '服务信息(富文本内容)',
                                                  `forward_url` varchar(255) DEFAULT NULL COMMENT '跳转链接URL',
                                                  `status` tinyint(4) DEFAULT '1' COMMENT '状态 1-待发布 2-已发布 3-已下架',
                                                  `view_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '浏览次数',
                                                  `bureau_dept_id` varchar(50) DEFAULT NULL COMMENT '执法单位ID',
                                                  `organ_id` varchar(50) DEFAULT NULL COMMENT '机构ID',
                                                  `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
                                                  `create_by_name` varchar(64) DEFAULT NULL COMMENT '创建者名称',
                                                  `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                                  `create_dept` varchar(50) DEFAULT NULL COMMENT '部门ID',
                                                  `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
                                                  `update_by_name` varchar(64) DEFAULT NULL COMMENT '更新者名称',
                                                  `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                                  `is_delete` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除 0=否 1=是',
                                                  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
                                                  PRIMARY KEY (`id`),
                                                  KEY `idx_target_type` (`target_platform`),
                                                  KEY `idx_content_type` (`content_type`)
) ENGINE=InnoDB  COMMENT='普法服务';


DROP TABLE IF EXISTS `sys_message_view_log`;
CREATE TABLE `sys_message_view_log` (
                                        `id` varchar(50) NOT NULL COMMENT '主键ID',
                                        `source_id` varchar(50) NOT NULL COMMENT '来源表ID',
                                        `platform_type` int(11) NOT NULL COMMENT '平台类型 1-监督端 2-执法端 3-企业端',
                                        `source_type` tinyint(4) NOT NULL COMMENT '来源表类型：1-普法消息',
                                        `company_id` varchar(50) DEFAULT NULL COMMENT '企业ID',
                                        `credit_code` varchar(32) DEFAULT NULL COMMENT '企业统一社会信用代码',
                                        `bureau_dept_id` varchar(50) DEFAULT NULL COMMENT '执法单位ID',
                                        `organ_id` varchar(50) DEFAULT NULL COMMENT '机构ID',
                                        `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
                                        `create_by_name` varchar(64) DEFAULT NULL COMMENT '创建者名称',
                                        `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                        `create_dept` varchar(50) DEFAULT NULL COMMENT '部门ID',
                                        `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
                                        `update_by_name` varchar(64) DEFAULT NULL COMMENT '更新者名称',
                                        `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                        `is_delete` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除 0=否 1=是',
                                        `remark` varchar(255) DEFAULT NULL COMMENT '备注',
                                        PRIMARY KEY (`id`) USING BTREE,
                                        KEY `idx_source_id` (`source_id`) USING BTREE,
                                        KEY `idx_platform_type` (`platform_type`) USING BTREE
) ENGINE=InnoDB  COMMENT='系统消息浏览表';

DROP TABLE IF EXISTS `sys_notice_info`;
CREATE TABLE `sys_notice_info` (
                                   `id` varchar(50) NOT NULL COMMENT '主键ID',
                                   `notice_content` text NOT NULL COMMENT '公告内容/标题',
                                   `publish_time` datetime DEFAULT NULL COMMENT '发布时间',
                                   `display_days` int(11) NOT NULL DEFAULT '0' COMMENT '显示时长（单位：天，0表示永久显示）',
                                   `target_platform` tinyint(4) NOT NULL COMMENT '内容发布到 1-企业端 2-执法端 3-监督端 0-全部',
                                   `status` tinyint(4) DEFAULT '1' COMMENT '状态 1-待发布 2-已发布 3-已下架',
                                   `effective_time` datetime DEFAULT NULL COMMENT '有效时间（由发布时间+显示天数计算，默认为空）',
                                   `bureau_dept_id` varchar(50) DEFAULT NULL COMMENT '执法单位ID',
                                   `create_dept` varchar(50) DEFAULT NULL COMMENT '部门ID',
                                   `organ_id` varchar(50) DEFAULT NULL COMMENT '机构ID',
                                   `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
                                   `create_by_name` varchar(64) DEFAULT NULL COMMENT '创建者名称',
                                   `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                   `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
                                   `update_by_name` varchar(64) DEFAULT NULL COMMENT '更新者名称',
                                   `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                   `is_delete` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除 0=否 1=是',
                                   `remark` varchar(255) DEFAULT NULL COMMENT '备注',
                                   PRIMARY KEY (`id`),
                                   KEY `idx_target_platform` (`target_platform`),
                                   KEY `idx_status` (`status`)
) ENGINE=InnoDB  COMMENT='系统公告信息主表';


DROP TABLE IF EXISTS `enforcement_carousel_banner`;
CREATE TABLE `enforcement_carousel_banner` (
                                               `id` varchar(50) NOT NULL COMMENT '主键ID',
                                               `title` varchar(200) NOT NULL COMMENT '轮播标题，如“普法宣传图”',
                                               `target_platform` tinyint(4) NOT NULL COMMENT '发布平台 0-全部 1-企业端 2-执法端 3-监督端',
                                               `carousel_position` int(11) NOT NULL COMMENT '橱窗/轮播位，如“橱窗1”',
                                               `display_days` int(11) NOT NULL DEFAULT '0' COMMENT '显示天数，0表示永久显示',
                                               `effective_time` datetime DEFAULT NULL COMMENT '有效时间（由发布时间+显示天数计算，默认为空）',
                                               `link_url` varchar(500) DEFAULT NULL COMMENT '跳转链接，支持外部链接',
                                               `image_url` varchar(500) DEFAULT NULL COMMENT '轮播图地址',
                                               `sort` int(11) DEFAULT '0' COMMENT '排序号，数值越小越靠前',
                                               `content` longtext COMMENT '内容(富文本内容)',
                                               `status` tinyint(4) DEFAULT '1' COMMENT '状态 1-待发布 2-已发布 3-已下架',
                                               `type` tinyint(4) DEFAULT '0' COMMENT '类型 0-富文本 1-外部链接',
                                               `bureau_dept_id` varchar(50) DEFAULT NULL COMMENT '执法单位ID',
                                               `create_dept` varchar(50) DEFAULT NULL COMMENT '部门ID',
                                               `organ_id` varchar(50) DEFAULT NULL COMMENT '机构ID',
                                               `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
                                               `create_by_name` varchar(64) DEFAULT NULL COMMENT '创建者名称',
                                               `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                               `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
                                               `update_by_name` varchar(64) DEFAULT NULL COMMENT '更新者名称',
                                               `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                               `is_delete` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否删除 0=否 1=是',
                                               `remark` varchar(255) DEFAULT NULL COMMENT '备注',
                                               PRIMARY KEY (`id`),
                                               KEY `idx_target_platform` (`target_platform`),
                                               KEY `idx_effective_time` (`effective_time`),
                                               KEY `idx_status` (`status`)
) ENGINE=InnoDB  COMMENT='轮播公告信息表';


