repair-order-permission-fix.sql 4.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. -- ==========================================
  2. -- 物业报修管理权限配置脚本
  3. -- 功能:为报修管理模块添加必要的权限配置
  4. -- 时间:2025-06-30
  5. -- 说明:解决报修管理列表权限访问问题
  6. -- ==========================================
  7. -- 1. 添加报修管理菜单和权限
  8. -- 注意:这里的ID需要确保不与现有数据冲突,使用较大的ID值
  9. -- 主菜单:物业管理
  10. INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query_param, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
  11. VALUES
  12. (2100, '物业管理', 0, 6, 'pm', NULL, '', 1, 0, 'M', '0', '0', '', 'tool', 1, sysdate(), 1, sysdate(), '物业管理模块');
  13. -- 二级菜单:报修管理
  14. INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query_param, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
  15. VALUES
  16. (2110, '报修管理', 2100, 1, 'repairOrder', 'pm/repairOrder/index', '', 1, 0, 'C', '0', '0', 'pm:repairOrder:list', 'form', 1, sysdate(), 1, sysdate(), '报修工单管理');
  17. -- 报修管理相关权限按钮
  18. INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query_param, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
  19. VALUES
  20. (2111, '报修查询', 2110, 1, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:query', '#', 1, sysdate(), 1, sysdate(), ''),
  21. (2112, '报修新增', 2110, 2, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:add', '#', 1, sysdate(), 1, sysdate(), ''),
  22. (2113, '报修修改', 2110, 3, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:edit', '#', 1, sysdate(), 1, sysdate(), ''),
  23. (2114, '报修删除', 2110, 4, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:remove', '#', 1, sysdate(), 1, sysdate(), ''),
  24. (2115, '报修导出', 2110, 5, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:export', '#', 1, sysdate(), 1, sysdate(), ''),
  25. (2116, '工单分派', 2110, 6, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:assign', '#', 1, sysdate(), 1, sysdate(), ''),
  26. (2117, '开始维修', 2110, 7, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:start', '#', 1, sysdate(), 1, sysdate(), ''),
  27. (2118, '完成维修', 2110, 8, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:finish', '#', 1, sysdate(), 1, sysdate(), ''),
  28. (2119, '取消工单', 2110, 9, '', '', '', 1, 0, 'F', '0', '0', 'pm:repairOrder:cancel', '#', 1, sysdate(), 1, sysdate(), '');
  29. -- 二级菜单:维修分类
  30. INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query_param, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
  31. VALUES
  32. (2120, '维修分类', 2100, 2, 'repairCategory', 'pm/repairCategory/index', '', 1, 0, 'C', '0', '0', 'pm:category:list', 'tree', 1, sysdate(), 1, sysdate(), '维修分类管理');
  33. -- 维修分类相关权限按钮
  34. INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query_param, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
  35. VALUES
  36. (2121, '分类查询', 2120, 1, '', '', '', 1, 0, 'F', '0', '0', 'pm:category:query', '#', 1, sysdate(), 1, sysdate(), ''),
  37. (2122, '分类新增', 2120, 2, '', '', '', 1, 0, 'F', '0', '0', 'pm:category:add', '#', 1, sysdate(), 1, sysdate(), ''),
  38. (2123, '分类修改', 2120, 3, '', '', '', 1, 0, 'F', '0', '0', 'pm:category:edit', '#', 1, sysdate(), 1, sysdate(), ''),
  39. (2124, '分类删除', 2120, 4, '', '', '', 1, 0, 'F', '0', '0', 'pm:category:remove', '#', 1, sysdate(), 1, sysdate(), ''),
  40. (2125, '分类导出', 2120, 5, '', '', '', 1, 0, 'F', '0', '0', 'pm:category:export', '#', 1, sysdate(), 1, sysdate(), ''),
  41. (2126, '分类树查询', 2120, 6, '', '', '', 1, 0, 'F', '0', '0', 'pm:category:tree', '#', 1, sysdate(), 1, sysdate(), '');
  42. -- 2. 为admin角色分配权限
  43. -- 获取admin角色ID(通常是1)和上面添加的菜单ID,建立关联
  44. INSERT INTO sys_role_menu (role_id, menu_id)
  45. SELECT 1, menu_id FROM sys_menu WHERE menu_id BETWEEN 2100 AND 2199;
  46. -- 3. 确保admin用户有这些权限
  47. -- admin用户通常已经有所有权限,但如果有问题可以重新关联
  48. -- 验证语句:检查权限是否正确添加
  49. SELECT
  50. m.menu_id,
  51. m.menu_name,
  52. m.perms,
  53. rm.role_id
  54. FROM sys_menu m
  55. LEFT JOIN sys_role_menu rm ON m.menu_id = rm.menu_id AND rm.role_id = 1
  56. WHERE m.menu_id BETWEEN 2100 AND 2199
  57. ORDER BY m.menu_id;
  58. -- 提示信息
  59. SELECT '物业报修管理权限配置完成,请重新登录系统以刷新权限缓存' AS message;