-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrole_refactor.sql
More file actions
40 lines (33 loc) · 1.75 KB
/
Copy pathrole_refactor.sql
File metadata and controls
40 lines (33 loc) · 1.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
-- ============================================================
-- 角色体系精简:4角色 → 3角色
-- ============================================================
USE `homestay`;
-- 1. 清理旧的角色菜单关联
DELETE FROM sys_role_menu WHERE role_id IN (1, 2, 3, 4);
-- 2. 清理旧角色
DELETE FROM sys_role WHERE id IN (1, 2, 3, 4);
-- 3. 重建3角色
INSERT INTO sys_role (id, status, name, code, remark) VALUES
(1, 0, '超级管理员', 'admin', '拥有系统全部权限'),
(2, 0, '运维主管', 'ops', '控制台与酒店管理'),
(3, 0, '客户', 'customer', '前台客户端');
-- 4. 菜单权限分配
-- 当前菜单ID(经 update_menu.sql 处理后):
-- 1=控制台, 2=酒店管理(目录), 3=订单管理, 7=财务统计, 8=房间管理, 9=客户管理
-- 10=系统管理(目录), 11=用户管理, 12=角色管理, 13=菜单管理, 15=日志管理, 16=营业日报
INSERT INTO sys_role_menu (role_id, menu_id) VALUES
-- 超级管理员:全部菜单
(1, 1), (1, 2), (1, 3), (1, 7), (1, 8), (1, 9),
(1, 10), (1, 11), (1, 12), (1, 13), (1, 15), (1, 16),
-- 运维主管:控制台 + 酒店管理(订单/房间/客户/财务统计)
(2, 1), (2, 2), (2, 3), (2, 7), (2, 8), (2, 9);
-- 客户(role=3):无后台菜单,走前台页面
-- 5. 迁移现有用户到新角色体系
-- 原 role=1 → 新 role=1(超级管理员)
-- 原 role=2,3,4 → 新 role=2(运维主管)
UPDATE sys_user SET role = 2 WHERE role NOT IN (1);
-- 6. 清理营业日报和财务统计菜单(整合进控制台)
DELETE FROM sys_role_menu WHERE menu_id IN (7, 16);
DELETE FROM sys_menu WHERE menu_id IN (7, 16);
-- 7. 删除超级管理员对已删菜单的关联(如有残留)
DELETE FROM sys_role_menu WHERE menu_id NOT IN (SELECT menu_id FROM sys_menu);