-- =============================================================
-- 风控平台 数据库增量脚本 2026-07-21
-- 新增字典:隐患类型 / 变动类型
-- 幂等可重复执行(基于 ON DUPLICATE KEY)
-- =============================================================

USE risk_control_platform;

-- =============================================================
-- 1) 隐患类型字典 risk_danger_type
--    对应 sys_dict_type.dict_type
--    数据:门店安全隐患 / 物流安全隐患 / 市场安全隐患
-- =============================================================

INSERT INTO sys_dict_type (tenant_id, dict_name, dict_type, create_dept, create_by, create_time, update_by, update_time, remark)
VALUES ('000000', '隐患类型', 'risk_danger_type', 103, 1, NOW(), 1, NOW(), '安全隐患类型(门店/物流/市场)')
ON DUPLICATE KEY UPDATE update_time = NOW();

INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, list_class, is_default, create_dept, create_by, create_time, update_by, update_time, remark) VALUES
('000000', 1, '门店安全隐患', '门店安全隐患', 'risk_danger_type', 'primary', 'N', 103, 1, NOW(), 1, NOW(), '门店日常运营安全隐患'),
('000000', 2, '物流安全隐患', '物流安全隐患', 'risk_danger_type', 'warning', 'N', 103, 1, NOW(), 1, NOW(), '物流运输/仓储环节隐患'),
('000000', 3, '市场安全隐患', '市场安全隐患', 'risk_danger_type', 'success', 'N', 103, 1, NOW(), 1, NOW(), '市场/销售环节隐患')
ON DUPLICATE KEY UPDATE update_time = NOW();

-- =============================================================
-- 2) 人员变动类型字典 audit_change_type
--    对应 sys_dict_type.dict_type
--    数据:离职 / 调任
-- =============================================================

INSERT INTO sys_dict_type (tenant_id, dict_name, dict_type, create_dept, create_by, create_time, update_by, update_time, remark)
VALUES ('000000', '变动类型', 'audit_change_type', 103, 1, NOW(), 1, NOW(), '人员变动类型')
ON DUPLICATE KEY UPDATE update_time = NOW();

INSERT INTO sys_dict_data (tenant_id, dict_sort, dict_label, dict_value, dict_type, list_class, is_default, create_dept, create_by, create_time, update_by, update_time, remark) VALUES
('000000', 1, '离职', '离职', 'audit_change_type', 'danger',  'N', 103, 1, NOW(), 1, NOW(), '人员离职'),
('000000', 2, '调任', '调任', 'audit_change_type', 'primary', 'N', 103, 1, NOW(), 1, NOW(), '人员调任')
ON DUPLICATE KEY UPDATE update_time = NOW();

-- =============================================================
-- 3) 数据清洗:作业上报 audit_status 旧值 '0' → '待审核'
--    (前端硬编码 '0' 但字典 value 是中文,导致列表显示裸 '0')
--    幂等可重跑
-- =============================================================
UPDATE risk_work_report SET audit_status = '待审核' WHERE audit_status = '0';

-- =============================================================
-- 验证
-- =============================================================
SELECT '--- 隐患类型 ---' AS info;
SELECT dict_sort, dict_label, dict_value, list_class FROM sys_dict_data WHERE dict_type = 'risk_danger_type' ORDER BY dict_sort;

SELECT '--- 变动类型 ---' AS info;
SELECT dict_sort, dict_label, dict_value, list_class FROM sys_dict_data WHERE dict_type = 'audit_change_type' ORDER BY dict_sort;

SELECT '--- 作业上报 audit_status 分布 ---' AS info;
SELECT audit_status, COUNT(*) AS cnt FROM risk_work_report GROUP BY audit_status;
