-- ==========================================
-- 风控平台 v1.1 更新脚本
-- 根据需求规格说明书v1.1完善功能
-- ==========================================

-- 1. 安全培训表
DROP TABLE IF EXISTS `safety_training`;
CREATE TABLE `safety_training` (
  `training_id` bigint NOT NULL AUTO_INCREMENT COMMENT '培训ID',
  `training_no` varchar(32) DEFAULT NULL COMMENT '培训编号',
  `training_title` varchar(100) NOT NULL COMMENT '培训标题',
  `training_type` varchar(32) DEFAULT NULL COMMENT '培训类型',
  `training_time` datetime DEFAULT NULL COMMENT '培训时间',
  `training_location` varchar(200) DEFAULT NULL COMMENT '培训地点',
  `trainer` varchar(64) DEFAULT NULL COMMENT '培训师',
  `participant_count` int DEFAULT 0 COMMENT '参与人数',
  `training_status` varchar(16) DEFAULT '未开始' COMMENT '培训状态',
  `training_content` text COMMENT '培训内容',
  `training_material` varchar(500) DEFAULT NULL COMMENT '培训资料',
  `status` char(1) DEFAULT '0' COMMENT '状态（0正常 1停用）',
  `del_flag` char(1) DEFAULT '0' COMMENT '删除标志（0代表存在 2代表删除）',
  `create_dept` bigint DEFAULT NULL COMMENT '创建部门',
  `create_by` bigint DEFAULT NULL COMMENT '创建者',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `update_by` bigint DEFAULT NULL COMMENT '更新者',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`training_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='安全培训';

-- 2. 安全培训字典数据
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('安全培训类型', 'safety_training_type', NULL, NOW(), '安全培训类型'),
('培训状态', 'training_status', NULL, NOW(), '安全培训状态');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '安全知识', '安全知识', 'safety_training_type', NULL, NOW(), NULL),
(2, '操作规范', '操作规范', 'safety_training_type', NULL, NOW(), NULL),
(3, '应急预案', '应急预案', 'safety_training_type', NULL, NOW(), NULL),
(4, '设备维护', '设备维护', 'safety_training_type', NULL, NOW(), NULL),
(1, '未开始', '未开始', 'training_status', NULL, NOW(), NULL),
(2, '进行中', '进行中', 'training_status', NULL, NOW(), NULL),
(3, '已结束', '已结束', 'training_status', NULL, NOW(), NULL);

-- 3. 更新字典数据 - 危险源类型（根据需求规格说明书v1.1）
UPDATE `sys_dict_data` SET `dict_label` = '电气危险源', `dict_value` = '电气危险源' WHERE `dict_type` = 'danger_source_type' AND `dict_value` = '电气';
UPDATE `sys_dict_data` SET `dict_label` = '消防危险源', `dict_value` = '消防危险源' WHERE `dict_type` = 'danger_source_type' AND `dict_value` = '消防';
UPDATE `sys_dict_data` SET `dict_label` = '高空危险源', `dict_value` = '高空危险源' WHERE `dict_type` = 'danger_source_type' AND `dict_value` = '高空';
UPDATE `sys_dict_data` SET `dict_label` = '设备危险源', `dict_value` = '设备危险源' WHERE `dict_type` = 'danger_source_type' AND `dict_value` = '设备';
UPDATE `sys_dict_data` SET `dict_label` = '食品危险源', `dict_value` = '食品危险源' WHERE `dict_type` = 'danger_source_type' AND `dict_value` = '食品';

-- 4. 更新字典数据 - 警示类型（根据需求规格说明书v1.1）
UPDATE `sys_dict_data` SET `dict_label` = '安全警示', `dict_value` = '安全警示' WHERE `dict_type` = 'warning_type' AND `dict_value` = '安全';
UPDATE `sys_dict_data` SET `dict_label` = '食安警示', `dict_value` = '食安警示' WHERE `dict_type` = 'warning_type' AND `dict_value` = '食安';
UPDATE `sys_dict_data` SET `dict_label` = '社会警示', `dict_value` = '社会警示' WHERE `dict_type` = 'warning_type' AND `dict_value` = '社会';

-- 5. 更新字典数据 - 舆情来源（根据需求规格说明书v1.1）
UPDATE `sys_dict_data` SET `dict_label` = '新闻网站', `dict_value` = '新闻网站' WHERE `dict_type` = 'opinion_source' AND `dict_value` = '新闻媒体';
UPDATE `sys_dict_data` SET `dict_label` = '短视频', `dict_value` = '短视频' WHERE `dict_type` = 'opinion_source' AND `dict_value` = '抖音';

-- 6. 更新字典数据 - 事故类型（根据需求规格说明书v1.1）
DELETE FROM `sys_dict_data` WHERE `dict_type` = 'accident_type';
INSERT INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '高处坠落', '高处坠落', 'accident_type', NULL, NOW(), NULL),
(2, '物体打击', '物体打击', 'accident_type', NULL, NOW(), NULL),
(3, '机械伤害', '机械伤害', 'accident_type', NULL, NOW(), NULL),
(4, '触电', '触电', 'accident_type', NULL, NOW(), NULL),
(5, '火灾', '火灾', 'accident_type', NULL, NOW(), NULL),
(6, '坍塌', '坍塌', 'accident_type', NULL, NOW(), NULL),
(7, '其他', '其他', 'accident_type', NULL, NOW(), NULL);

-- 7. 安全隐患字典数据 - 隐患类型
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('隐患类型', 'hazard_type', NULL, NOW(), '安全隐患类型');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '门店安全隐患', '门店安全隐患', 'hazard_type', NULL, NOW(), NULL),
(2, '物流安全隐患', '物流安全隐患', 'hazard_type', NULL, NOW(), NULL),
(3, '市场安全隐患', '市场安全隐患', 'hazard_type', NULL, NOW(), NULL);

-- 8. 风险等级字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('风险等级', 'risk_level', NULL, NOW(), '风险等级');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '高风险', '高风险', 'risk_level', NULL, NOW(), NULL),
(2, '中风险', '中风险', 'risk_level', NULL, NOW(), NULL),
(3, '低风险', '低风险', 'risk_level', NULL, NOW(), NULL);

-- 9. 作业类型字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('作业类型', 'work_type', NULL, NOW(), '作业上报类型');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '临时施工上报', '临时施工上报', 'work_type', NULL, NOW(), NULL),
(2, '改造工程上报', '改造工程上报', 'work_type', NULL, NOW(), NULL);

-- 10. 设备维护状态字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('设备维护状态', 'maintenance_status', NULL, NOW(), '特种设备维护状态');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '待维护', '待维护', 'maintenance_status', NULL, NOW(), NULL),
(2, '维护中', '维护中', 'maintenance_status', NULL, NOW(), NULL),
(3, '已维护', '已维护', 'maintenance_status', NULL, NOW(), NULL);

-- 11. 审计状态字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('审计状态', 'audit_status', NULL, NOW(), '审计状态');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '待审计', '待审计', 'audit_status', NULL, NOW(), NULL),
(2, '已完成', '已完成', 'audit_status', NULL, NOW(), NULL);

-- 12. 人员变动类型字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('人员变动类型', 'person_change_type', NULL, NOW(), '人员变动类型');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '调任', '调任', 'person_change_type', NULL, NOW(), NULL),
(2, '离职', '离职', 'person_change_type', NULL, NOW(), NULL);

-- 13. 巡检类型字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('巡检类型', 'patrol_type', NULL, NOW(), '巡检打卡类型');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '园区巡检打卡', '园区巡检打卡', 'patrol_type', NULL, NOW(), NULL),
(2, '门店闭店检查', '门店闭店检查', 'patrol_type', NULL, NOW(), NULL),
(3, '打样设施设备检查', '打样设施设备检查', 'patrol_type', NULL, NOW(), NULL);

-- 14. 巡检周期字典
INSERT IGNORE INTO `sys_dict_type` (`dict_name`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
('巡检周期', 'patrol_cycle', NULL, NOW(), '巡检周期');

INSERT IGNORE INTO `sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `create_by`, `create_time`, `remark`) VALUES 
(1, '每日', '每日', 'patrol_cycle', NULL, NOW(), NULL),
(2, '每周', '每周', 'patrol_cycle', NULL, NOW(), NULL),
(3, '每月', '每月', 'patrol_cycle', NULL, NOW(), NULL);
