-- ============================================ -- 教育投诉平台 角色与数据权限(达梦 DM8,模式 COMPLAINT) -- 前置:ry_dm_menu.sql(菜单 2001~2016)已执行 -- 执行方式:DBeaver 用 COMPLAINT 连接,Ctrl+Shift+Enter -- ============================================ -- 1. sys_user 增加关联学校机构字段(学校管理员角色数据权限载体,空=教育局账号看全量) alter table sys_user add unit_uid varchar(64); comment on column sys_user.unit_uid is '关联学校机构UID(学校管理员角色数据权限,空表示教育局账号)'; -- 2. 三个业务角色 SET IDENTITY_INSERT sys_role ON; -- 教育局管理员:全量数据 + 全部投诉菜单(含系统设置) insert into sys_role (role_id, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, remark) values (100, '教育局管理员', 'complaint_edu_admin', 10, '1', 1, 1, '0', '0', 'admin', sysdate, '投诉平台-教育局全量管理'); -- 复核人员:工作台 + 工单查看 + 复核处理 insert into sys_role (role_id, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, remark) values (101, '复核人员', 'complaint_reviewer', 11, '1', 1, 1, '0', '0', 'admin', sysdate, '投诉平台-异议复核'); -- 学校管理员:工作台 + 工单列表与处置(后端按 sys_user.unit_uid 强制过滤本校数据) insert into sys_role (role_id, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, remark) values (102, '学校管理员', 'complaint_school_admin', 12, '1', 1, 1, '0', '0', 'admin', sysdate, '投诉平台-学校处置(数据范围限本校)'); SET IDENTITY_INSERT sys_role OFF; -- 3. 角色菜单授权 -- 教育局管理员:全部投诉菜单与按钮 insert into sys_role_menu (role_id, menu_id) values (100, 2001), (100, 2002), (100, 2003), (100, 2004), (100, 2005), (100, 2006), (100, 2007), (100, 2008), (100, 2010), (100, 2011), (100, 2012), (100, 2013), (100, 2014), (100, 2015), (100, 2016); -- 复核人员:工作台、工单管理(仅查询)、复核管理及处理 insert into sys_role_menu (role_id, menu_id) values (101, 2001), (101, 2002), (101, 2003), (101, 2004), (101, 2010), (101, 2012); -- 学校管理员:工作台、工单列表与处置 insert into sys_role_menu (role_id, menu_id) values (102, 2001), (102, 2002), (102, 2003), (102, 2010), (102, 2011); -- 4. 账号绑定示例(请先在"用户管理"创建账号,再执行以下绑定) -- 4.1 授予角色(user_id 替换为实际账号 ID) -- insert into sys_user_role (user_id, role_id) values ({user_id}, 102); -- 4.2 学校管理员账号绑定学校机构(unit_uid 取自 unit_school.unit_uid,可在"学校管理"页查看) -- update sys_user set unit_uid = '{unit_uid}' where user_id = {user_id}; commit;