|
@@ -139,6 +139,7 @@ public class BasicRoleDataPermissionServiceImpl extends ServiceImpl<BasicRoleDat
|
|
List<Long> roleIdList = sysRoleService.getUserRoles(requestUserId);
|
|
List<Long> roleIdList = sysRoleService.getUserRoles(requestUserId);
|
|
// 数据库中存在该方法的url
|
|
// 数据库中存在该方法的url
|
|
int maxWeight = 0;
|
|
int maxWeight = 0;
|
|
|
|
+ DataPermissionTypeEnum finalPermissionType = null;
|
|
for (Long roleId : roleIdList) {
|
|
for (Long roleId : roleIdList) {
|
|
DataPermissionTypeEnum roleDataPermissionType = this.searchRoleDataPermissionByPrivilege(roleId,
|
|
DataPermissionTypeEnum roleDataPermissionType = this.searchRoleDataPermissionByPrivilege(roleId,
|
|
sysPrivilege, schoolId);
|
|
sysPrivilege, schoolId);
|
|
@@ -146,11 +147,12 @@ public class BasicRoleDataPermissionServiceImpl extends ServiceImpl<BasicRoleDat
|
|
// 角色数据权限不为空时,筛选出所有角色在该url中的最大范围数据权限为该url的最终数据权限
|
|
// 角色数据权限不为空时,筛选出所有角色在该url中的最大范围数据权限为该url的最终数据权限
|
|
int weight = roleDataPermissionType.getWeight();
|
|
int weight = roleDataPermissionType.getWeight();
|
|
if (weight > maxWeight) {
|
|
if (weight > maxWeight) {
|
|
|
|
+ // 更新为当前找到的最高权限类型
|
|
maxWeight = weight;
|
|
maxWeight = weight;
|
|
|
|
+ finalPermissionType = roleDataPermissionType;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- DataPermissionTypeEnum finalPermissionType = DataPermissionTypeEnum.findByWeight(maxWeight);
|
|
|
|
if (Objects.nonNull(finalPermissionType)) {
|
|
if (Objects.nonNull(finalPermissionType)) {
|
|
// 最终数据权限不为空
|
|
// 最终数据权限不为空
|
|
SysUser requestUser = sysUserService.getById(requestUserId);
|
|
SysUser requestUser = sysUserService.getById(requestUserId);
|