1.用户表 user
id_user sys_guid() 表主键
user_no 业务主键
user_name
disabled boolean 是否禁用
role_ids jsonb default '[]'::jsonb 用户含有的多个角色id,有了这个json类型,就不用设计用户角色关联表了
dept_code
dept_name
upper_dept_codes jsonb default '[]'::jsonb 上级机构链,含自身
upper_dept_names jsonb default '[]'::jsonb
is_super_admin boolean 是否是超级管理员
...用户自带的其他信息
2.角色表 role_info
id_role_info sys_guid() 表主键
role_id 角色id
role_name 角色名称
status 角色状态是否禁用
3.角色资源关联表 role_menu,1个角色对应多个资源;也可以在角色表中加入json类,如menus
id_role_menu sys_guid() 表主键
role_id
menu_id 资源id
4.资源表 menu_info
id_menu_info sys_guid() 表主键
menu_id 资源id
menu_name 资源名称X
parent_id 父资源id
order_num 页面显示顺序
url 页面的路由
menu_type 资源类型(M:目录,C:菜单 F:按钮)
visible 菜单是否可见
icon 图标
perm 按钮权限检查
5.资源表数据展示
| menu_id | menu_name | parent_id | url | menu_type | perm |
|---|
| 700 | 用户管理 | 0 | /user | C | |
| 701 | 查询用户 | 700 | | F | USER:QUERY |
| 702 | 新增用户 | 700 | | F | USER:ADD |
| 800 | 角色管理 | 0 | /role | C | |
| 801 | 查询角色 | 800 | | F | ROLE:QUERY |
| 802 | 新增角色 | 800 | | F | ROLE:ADD |