Appearance
权限操作
本章节介绍速构平台强大的权限管理功能。
权限体系
速构平台的权限体系分为以下几个层级:
┌─────────────┐
│ 菜单权限 │ 控制用户可以访问哪些菜单页面
├─────────────┤
│ 按钮权限 │ 控制用户可以操作哪些按钮(新增/编辑/删除等)
├─────────────┤
│ 数据范围权限 │ 控制用户可以查看/操作哪些数据
├─────────────┤
│ 字段权限 │ 控制用户可以查看/编辑哪些字段
├─────────────┤
│ 控件权限 │ 控制页面上控件的可见性和可用性
└─────────────┘菜单权限
配置方式
- 进入 系统管理 → 权限管理 → 菜单管理
- 选择要分配权限的菜单
- 设置哪些角色可以访问该菜单
权限检查
javascript
// 检查当前用户是否有某个菜单权限
if (hasMenuPermission('menu_customer')) {
// 有菜单权限
} else {
// 无菜单权限
}
// 获取当前用户有权限的菜单列表
var menus = getUserMenus();按钮权限
配置方式
- 进入 系统管理 → 权限管理 → 按钮权限
- 选择对应的功能页面
- 为每个按钮设置允许的角色
支持的按钮权限
| 按钮 | 编码 | 说明 |
|---|---|---|
| 查看 | btn_view | 查看详情 |
| 新增 | btn_add | 新增数据 |
| 编辑 | btn_edit | 编辑修改 |
| 删除 | btn_delete | 删除数据 |
| 导出 | btn_export | 导出数据 |
| 打印 | btn_print | 打印数据 |
| 审核 | btn_audit | 审核操作 |
权限检查
javascript
// 检查按钮权限
if (hasButtonPermission('btn_edit')) {
// 显示编辑按钮
} else {
// 隐藏编辑按钮
}
// 批量检查权限
var perms = checkButtonPermissions(['btn_add', 'btn_edit', 'btn_delete']);
// 返回:{ btn_add: true, btn_edit: true, btn_delete: false }数据范围权限
范围类型
| 类型 | 说明 |
|---|---|
| 全部数据 | 可以查看/操作所有数据 |
| 本部门数据 | 只能查看/操作本部门的数据 |
| 本部门及下级 | 可以查看/操作本部门及下级部门的数据 |
| 本人数据 | 只能查看/操作自己创建的数据 |
| 自定义范围 | 根据自定义 SQL 条件过滤数据 |
配置方式
- 进入 系统管理 → 权限管理 → 数据范围
- 选择角色和功能
- 设置数据范围类型
自动过滤
配置数据范围后,平台会自动在查询时追加数据过滤条件,开发人员无需手动处理。
角色权限管理
角色说明
- 一个用户可以拥有多个角色
- 用户的权限是其所有角色权限的并集
- 建议按岗位设置角色(如:管理员、销售、财务等)
权限复制
当需要创建类似权限的角色时,可以使用权限复制功能:
- 进入 系统管理 → 权限管理 → 角色管理
- 选择已有角色,点击"复制"
- 输入新角色名称
- 根据需要微调权限
权限缓存
- 用户权限在登录时加载并缓存
- 修改权限后,用户需要重新登录生效
- 管理员可以强制指定用户重新登录以刷新权限