| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- -- ============================================
- -- 字典数据初始化脚本(幂等性版本)
- -- ============================================
- -- 1. 检查并插入 dict_type
- DECLARE
- v_count INT;
- BEGIN
- SELECT COUNT(*) INTO v_count FROM sys_dict_type WHERE dict_type = 'complaint_category';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_type (dict_id, dict_name, dict_type, status, create_by, create_time, remark)
- VALUES (100, '投诉分类', 'complaint_category', '0', 'admin', sysdate, '教育投诉分类');
- DBMS_OUTPUT.PUT_LINE('✓ 已创建字典类型:complaint_category');
- ELSE
- DBMS_OUTPUT.PUT_LINE('⚠️ 字典类型 complaint_category 已存在');
- END IF;
-
- SELECT COUNT(*) INTO v_count FROM sys_dict_type WHERE dict_type = 'school_type';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_type (dict_id, dict_name, dict_type, status, create_by, create_time, remark)
- VALUES (101, '学校类别', 'school_type', '0', 'admin', sysdate, '学校类别(映射东软 DWLX)');
- DBMS_OUTPUT.PUT_LINE('✓ 已创建字典类型:school_type');
- ELSE
- DBMS_OUTPUT.PUT_LINE('⚠️ 字典类型 school_type 已存在');
- END IF;
- END;
- /
- -- 2. 检查并插入 dict_data(投诉分类)
- DECLARE
- v_count INT;
- BEGIN
- -- 违规收费
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'complaint_category' AND dict_value = '违规收费';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (500, 1, '违规收费', '违规收费', 'complaint_category', 'N', '0', 'admin', sysdate, '');
- END IF;
-
- -- 食品安全
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'complaint_category' AND dict_value = '食品安全';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (501, 2, '食品安全', '食品安全', 'complaint_category', 'N', '0', 'admin', sysdate, '');
- END IF;
-
- -- 补课违规
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'complaint_category' AND dict_value = '补课违规';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (502, 3, '补课违规', '补课违规', 'complaint_category', 'N', '0', 'admin', sysdate, '');
- END IF;
-
- -- 师德师风
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'complaint_category' AND dict_value = '师德师风';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (503, 4, '师德师风', '师德师风', 'complaint_category', 'N', '0', 'admin', sysdate, '');
- END IF;
-
- -- 招生违规
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'complaint_category' AND dict_value = '招生违规';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (504, 5, '招生违规', '招生违规', 'complaint_category', 'N', '0', 'admin', sysdate, '');
- END IF;
-
- -- 其他
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'complaint_category' AND dict_value = '其他';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (505, 6, '其他', '其他', 'complaint_category', 'N', '0', 'admin', sysdate, '');
- END IF;
-
- DBMS_OUTPUT.PUT_LINE('✓ 投诉分类字典数据已就绪');
- END;
- /
- -- 3. 检查并插入 dict_data(学校类别)
- DECLARE
- v_count INT;
- BEGIN
- -- 幼儿园
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'school_type' AND dict_value = '幼儿园';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (510, 1, '幼儿园', '幼儿园', 'school_type', 'N', '0', 'admin', sysdate, 'DWLX=11');
- END IF;
-
- -- 小学
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'school_type' AND dict_value = '小学';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (511, 2, '小学', '小学', 'school_type', 'N', '0', 'admin', sysdate, 'DWLX=21');
- END IF;
-
- -- 初中
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'school_type' AND dict_value = '初中';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (512, 3, '初中', '初中', 'school_type', 'N', '0', 'admin', sysdate, 'DWLX=31');
- END IF;
-
- -- 高中
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'school_type' AND dict_value = '高中';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (513, 4, '高中', '高中', 'school_type', 'N', '0', 'admin', sysdate, 'DWLX=34');
- END IF;
-
- -- 中职
- SELECT COUNT(*) INTO v_count FROM sys_dict_data WHERE dict_type = 'school_type' AND dict_value = '中职';
- IF v_count = 0 THEN
- INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, is_default, status, create_by, create_time, remark)
- VALUES (514, 5, '中职', '中职', 'school_type', 'N', '0', 'admin', sysdate, 'DWLX=36');
- END IF;
-
- DBMS_OUTPUT.PUT_LINE('✓ 学校类别字典数据已就绪');
- END;
- /
- COMMIT;
- -- 4. 最终验证
- SELECT '==== 字典数据统计 ====' as message;
- SELECT dict_type, COUNT(*) as count FROM sys_dict_data
- WHERE dict_type IN ('complaint_category', 'school_type')
- GROUP BY dict_type;
|