| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- DO $$
- DECLARE
- parent_menu_id BIGINT := 0; -- ★ 修改为实际父级菜单ID
- ttsa_dir_id BIGINT;
- menu_id BIGINT;
- max_order INT;
- BEGIN
- -- 清理已存在菜单 + 重置序列(可重复执行)
- DELETE FROM sys_menu WHERE perms LIKE 'ttsa:%';
- DELETE FROM sys_menu WHERE path = 'ttsa' AND menu_type = 'M';
- PERFORM setval('sys_menu_menu_id_seq', COALESCE((SELECT MAX(menu_id) FROM sys_menu), 0));
- SELECT COALESCE(MAX(order_num), 0) INTO max_order FROM sys_menu WHERE parent_id = parent_menu_id;
- max_order := max_order + 1;
- -- 一级目录
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('三类人员考核', parent_menu_id, max_order, 'ttsa', NULL, 1, 0, 'M', '0', '0', '', 'user', 'admin', now())
- RETURNING menu_id INTO ttsa_dir_id;
- -- 1. 三类人员信息
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('三类人员信息', ttsa_dir_id, 1, 'objtts', 'slaj/ttsa/objtts/index', 1, 0, 'C', '0', '0', 'ttsa:objtts:list', 'people', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time) VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:objtts:add','#','admin',now());
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time) VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:objtts:edit','#','admin',now());
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time) VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:objtts:remove','#','admin',now());
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time) VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:objtts:export','#','admin',now());
- -- 2. 安全考核申请
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('安全考核申请', ttsa_dir_id, 2, 'objttsa', 'slaj/ttsa/objttsa/index', 1, 0, 'C', '0', '0', 'ttsa:objttsa:list', 'form', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:objttsa:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:objttsa:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:objttsa:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:objttsa:export','#','admin',now());
- -- 3. 批量考核申请
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('批量考核申请', ttsa_dir_id, 3, 'objttsaexamappl', 'slaj/ttsa/objttsaexamappl/index', 1, 0, 'C', '0', '0', 'ttsa:objttsaexamappl:list', 'list', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:objttsaexamappl:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:objttsaexamappl:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:objttsaexamappl:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:objttsaexamappl:export','#','admin',now());
- -- 4. 三类人员证书
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('三类人员证书', ttsa_dir_id, 4, 'ttsacert', 'slaj/ttsa/ttsacert/index', 1, 0, 'C', '0', '0', 'ttsa:ttsacert:list', 'certificate', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsacert:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsacert:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsacert:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsacert:export','#','admin',now());
- -- 5. 证书阵列
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('证书阵列', ttsa_dir_id, 5, 'ttsacertarray', 'slaj/ttsa/ttsacertarray/index', 1, 0, 'C', '0', '0', 'ttsa:ttsacertarray:list', 'grid', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsacertarray:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsacertarray:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsacertarray:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsacertarray:export','#','admin',now());
- -- 6. 证书变更申请
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('证书变更申请', ttsa_dir_id, 6, 'ttsacertchaappl', 'slaj/ttsa/ttsacertchaappl/index', 1, 0, 'C', '0', '0', 'ttsa:ttsacertchaappl:list', 'edit', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsacertchaappl:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsacertchaappl:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsacertchaappl:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsacertchaappl:export','#','admin',now());
- -- 7-14. 证书变更明细表(8张)
- FOR rec IN SELECT * FROM (VALUES
- ('单位变更',7,'ttsacertchacomp','ttsa:ttsacertchacomp'),
- ('遗失补办',8,'ttsacertchalost','ttsa:ttsacertchalost'),
- ('姓名变更',9,'ttsacertchaname','ttsa:ttsacertchaname'),
- ('人员变更',10,'ttsacertchapers','ttsa:ttsacertchapers'),
- ('证书调动',11,'ttsacertchatran','ttsa:ttsacertchatran'),
- ('补发申请',12,'ttsacertreisappl','ttsa:ttsacertreisappl'),
- ('撤销申请',13,'ttsacertrevappl','ttsa:ttsacertrevappl'),
- ('延期申请',14,'ttsaceriextapll','ttsa:ttsaceriextapll')
- ) AS t(name, ord, comp, perm_prefix) LOOP
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES (rec.name, ttsa_dir_id, rec.ord, rec.comp, 'slaj/ttsa/'||rec.comp||'/index', 1, 0, 'C', '0', '0', rec.perm_prefix||':list', 'cascader', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0',rec.perm_prefix||':add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0',rec.perm_prefix||':edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0',rec.perm_prefix||':remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0',rec.perm_prefix||':export','#','admin',now());
- END LOOP;
- -- 15. 考核计划
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('考核计划', ttsa_dir_id, 15, 'ttsaexamplan', 'slaj/ttsa/ttsaexamplan/index', 1, 0, 'C', '0', '0', 'ttsa:ttsaexamplan:list', 'date', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsaexamplan:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsaexamplan:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsaexamplan:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsaexamplan:export','#','admin',now());
- -- 16. 试卷
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('试卷', ttsa_dir_id, 16, 'ttsapaper', 'slaj/ttsa/ttsapaper/index', 1, 0, 'C', '0', '0', 'ttsa:ttsapaper:list', 'documentation', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsapaper:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsapaper:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsapaper:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsapaper:export','#','admin',now());
- -- 17. 试题
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('试题', ttsa_dir_id, 17, 'ttsatque', 'slaj/ttsa/ttsatque/index', 1, 0, 'C', '0', '0', 'ttsa:ttsatque:list', 'component', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsatque:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsatque:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsatque:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsatque:export','#','admin',now());
- -- 18. 试题选项
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('试题选项', ttsa_dir_id, 18, 'ttsatqueopt', 'slaj/ttsa/ttsatqueopt/index', 1, 0, 'C', '0', '0', 'ttsa:ttsatqueopt:list', 'radio', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsatqueopt:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsatqueopt:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsatqueopt:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsatqueopt:export','#','admin',now());
- -- 19. 考试成绩
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('考试成绩', ttsa_dir_id, 19, 'ttsascore', 'slaj/ttsa/ttsascore/index', 1, 0, 'C', '0', '0', 'ttsa:ttsascore:list', 'number', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsascore:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsascore:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsascore:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsascore:export','#','admin',now());
- -- 20. 考核记录
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES ('考核记录', ttsa_dir_id, 20, 'ttsarec', 'slaj/ttsa/ttsarec/index', 1, 0, 'C', '0', '0', 'ttsa:ttsarec:list', 'log', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0','ttsa:ttsarec:add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0','ttsa:ttsarec:edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0','ttsa:ttsarec:remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0','ttsa:ttsarec:export','#','admin',now());
- -- 21-27. 剩余7表
- FOR rec IN SELECT * FROM (VALUES
- ('考核培训',21,'ttsatrain','ttsa:ttsatrain'),
- ('培训人员',22,'ttsatrainpers','ttsa:ttsatrainpers'),
- ('考核指定',23,'ttsadesign','ttsa:ttsadesign'),
- ('指定明细',24,'ttsadesigndetail','ttsa:ttsadesigndetail'),
- ('指定考试关联',25,'ttsadesignexamrel','ttsa:ttsadesignexamrel'),
- ('考核企业',26,'ttsaexamente','ttsa:ttsaexamente'),
- ('申请安全元素',27,'ttsaapplwiun','ttsa:ttsaapplwiun')
- ) AS t(name, ord, comp, perm_prefix) LOOP
- INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time)
- VALUES (rec.name, ttsa_dir_id, rec.ord, rec.comp, 'slaj/ttsa/'||rec.comp||'/index', 1, 0, 'C', '0', '0', rec.perm_prefix||':list', 'link', 'admin', now()) RETURNING menu_id INTO menu_id;
- INSERT INTO sys_menu VALUES ('新增',menu_id,1,'','',1,0,'F','0','0',rec.perm_prefix||':add','#','admin',now());
- INSERT INTO sys_menu VALUES ('修改',menu_id,2,'','',1,0,'F','0','0',rec.perm_prefix||':edit','#','admin',now());
- INSERT INTO sys_menu VALUES ('删除',menu_id,3,'','',1,0,'F','0','0',rec.perm_prefix||':remove','#','admin',now());
- INSERT INTO sys_menu VALUES ('导出',menu_id,4,'','',1,0,'F','0','0',rec.perm_prefix||':export','#','admin',now());
- END LOOP;
- RAISE NOTICE 'TTSA menu done. Rows inserted.';
- END $$;
|