-- ========================================== -- 维修角色创建和用户分配脚本 -- 功能:创建维修人员和物业维修管理员角色,并为总务处用户分配角色 -- 时间:2025-06-30 13:45:00 -- 说明:使用UPSERT逻辑,支持重复执行 -- ========================================== -- 第一步:创建维修人员角色 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, update_by, update_time, remark ) SELECT 5, '维修人员', 'maintenance_worker', 5, '5', 1, 1, '0', '0', 1, now(), 1, now(), '负责具体维修工作的人员,可以查看和处理分配给自己的维修工单' WHERE NOT EXISTS (SELECT 1 FROM sys_role WHERE role_id = 5); -- 第二步:创建物业维修管理员角色 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, update_by, update_time, remark ) SELECT 6, '物业维修管理员', 'property_maintenance_admin', 6, '3', 1, 1, '0', '0', 1, now(), 1, now(), '负责物业维修管理工作,可以管理维修工单、分配维修任务、查看维修统计' WHERE NOT EXISTS (SELECT 1 FROM sys_role WHERE role_id = 6); -- 第三步:为总务处用户分配维修人员角色 -- 选择用户:zwc005(陆雄) 和 zwc007(邹凯) INSERT IGNORE INTO sys_user_role (user_id, role_id) VALUES (2125, 5), -- zwc005(陆雄) -> 维修人员 (2127, 5); -- zwc007(邹凯) -> 维修人员 -- 第四步:为总务处用户分配物业维修管理员角色 -- 选择用户:zwc003(舒刚) 和 zwc004(晏茹) INSERT IGNORE INTO sys_user_role (user_id, role_id) VALUES (2123, 6), -- zwc003(舒刚) -> 物业维修管理员 (2124, 6); -- zwc004(晏茹) -> 物业维修管理员 -- 第五步:验证创建结果 SELECT '角色创建验证' as message, (SELECT COUNT(*) FROM sys_role WHERE role_id IN (5, 6)) as created_roles, (SELECT COUNT(*) FROM sys_user_role WHERE role_id IN (5, 6)) as assigned_users; -- 详细验证信息 SELECT '维修角色分配验证' as verification_type, r.role_name as '角色名称', u.user_name as '用户名', u.nick_name as '昵称', d.dept_name as '部门' FROM sys_user_role ur JOIN sys_role r ON ur.role_id = r.role_id JOIN sys_user u ON ur.user_id = u.user_id JOIN sys_dept d ON u.dept_id = d.dept_id WHERE ur.role_id IN (5, 6) ORDER BY r.role_id, u.user_id; -- 第六步:为这两个角色分配基础权限(可根据需要调整) -- 注意:这里暂时不分配具体权限,后续可以通过管理界面或额外脚本配置 SELECT '权限配置提醒' as message, '新创建的角色需要在系统管理->角色管理中配置具体的菜单权限' as reminder;