数据权限用法一(使用查询过滤器) - xinwu-yang/cube-java GitHub Wiki

数据权限,是通过数据权限控制行数据展示,让不同的人看不同的数据; 比如: 销售人员只能看自己的数据;销售经理可以看所有下级销售人员的数据;财务只看金额大于5000的数据等等;

示例 以用户管理列表为例, 实现只查询用户账号带1的用户 数据权限用法分两种:通过前端组件名匹配数据权限通过请求URL匹配数据权限 推荐用第一种方式

通过前端组件名匹配数据权限

基于注解 @PermissionData("system/UserList") 实现具体步骤如下:

  1. 配置页面菜单

  1. 给Controller中指定的方法加注解

给请求方法添加注解 @PermissionData,参数value值与菜单的前端组件值保持一致

  1. 给菜单配置数据权限

数据权限配置(只看性别为男的用户)

  1. 角色授权

  1. 测试权限

退出重新登录,访问用户管理界面发现数据被过滤了,只看到男的数据,说明权限生效!

规则字段配置说明

这里对应的是实体的字段名,一般是驼峰写法,比如:创建人配置的是createBy,而不是create_by

特别注意: 当使用自定义SQL时,仍然需要使用数据库字段名称create_by

规则字段配置详细说明(非常重要) ①规则字段:使用实体字段名 (如果是online需要配置数据库字段名) ②规则值:指定值 ( 固定值/系统上下文变量 ) ③条件规则:大于/大于等于/小于/小于等于/等于/包含/模糊/不等于/自定义SQL