实际开发中,会经常遇到要做数据权限控制,这部分的代码是比较繁琐和臃肿的,而且容易写错,一改要改一大堆,这个注解可以帮助自动生成数据权限过滤的SQL,可以自动插入到查询语句,也可以手动选择插入到需要过滤权限的条件处
参数说明
提示
数据权限有很多形式来过滤,一般情况下是以部门来过滤的,所以注解名称也就直接以dept来命名权限了
| 参数 | 类型 | 必须 | 默认 | 说明 |
|---|---|---|---|---|
| userScopeTable | String | 否 | "" | 用户关联权限的表 |
| userScopeField | String | 否 | "" | 用户在权限关联表的关联字段 |
| userScopeDeptId | String | 否 | "" | 权限关联表关联权限的字段 |
| roleScopeTable | String | 否 | "" | 按角色关联权限的权限关联表 |
| roleScopeField | String | 否 | "" | 按角色关联权限的权限关联表的角色字段 |
| roleScopeDeptId | String | 否 | "" | 按角色关联权限的权限关联表的权限字段 |
| roleTable | String | 否 | "" | 角色表 |
| roleField | String | 否 | "" | 角色主键字段 |
| roleCode | String | 否 | "" | 角色 code 字段 |
| deptTable | String | 否 | "" | 权限表 |
| deptId | String | 否 | "" | 权限主键字段 |
| deptPidAll | String | 否 | "" | 权限所有的父级的字段 |
| multiTable | String | 否 | "" | 一对多的数据权限关联的表 |
| multiFiled | String | 否 | "" | 一对多的数据权限关联的表用于关联需要过滤表的字段 |
| multiDeptId | String | 否 | "" | 一对多的数据权限关联的表用于关联权限的字段 |
| alias | String | 是 | 需要过滤数据权限的表的别名 | |
| field | String | 是 | 需要过滤数据权限的表的用来过滤的字段 | |
| sqlField | String | 否 | "data_scope" | 自动生成的数据权限过滤SQL参数名 |
| filterType | DataScopeFilterType | 否 | DataScopeFilterType.USER | 按何种方式过滤 |
| type | DataScopeType | 否 | DataScopeType.SINGLE | 数据权限类型 |
| logicDelete | boolean | 否 | false | 权限表是否是逻辑删除的 |
| logicField | String | 否 | "" | 逻辑删除字段 |
| notDeletedStatus | String | 否 | "" | 逻辑删除的未删除状态 |
| dbtype | DbType | 否 | DbType.POSTGRE_SQL | 数据库类型,com.baomidou.mybatisplus.annotation.DbType |
| includeChildren | boolean | 否 | true | 是否包含查询权限子集 |
| includeParents | boolean | 否 | false | 是否包含查询权限父集 |
| dataScopeCondition | Class<? extends DataScopeCondition> dataScopeCondition() |
否 | DefaultDataScopeCondition.class |
判断是否要进行数据权限过滤 |
| custom | Class<? extends DataScopeCustom> |
否 | DefaultDataScopeCustom.class |
自定义过滤规则 |
| notExistDealType | DataScopeGetNotDealType | 否 | DefaultDataScopeCustom.class |
自定义过滤规则 |
| auto | boolean | 否 | true | 是否自动把过滤条件添加到 where 语句后面,默认添加到第一个 where 后面 |
| extensible | boolean | 否 | false | 是否扩展 |
| extensionScopeTable | String | 否 | "" | 扩展数据范围表 |
| extensionScopeField | String | 否 | "" | 扩展数据范围表的主键(用来关联是哪个权限需要扩展范围) |
| extensionScopeDeptId | String | 否 | "" | 扩展数据范围表的关联扩展的权限的 id |
| statusFilter | boolean | 否 | false | 是否按权限表的状态过滤掉失效的权限 |
| statusField | String | 否 | "" | 权限表的状态字段 |
| enableStatus | String | 否 | "1" | 权限启用状态,默认启动状态是 1 |
2024年12月19日大约 9 分钟