完成 Role 模块的迁移

This commit is contained in:
YunaiV
2021-01-09 23:08:32 +08:00
parent 04feb57ed8
commit 1bfaa2c967
26 changed files with 151 additions and 361 deletions

View File

@@ -52,13 +52,22 @@ public interface SysPermissionService {
Set<Long> listRoleMenuIds(Long roleId);
/**
* 赋予赋予角色菜单
* 设置角色菜单
*
* @param roleId 角色编号
* @param menuIds 菜单编号集合
*/
void assignRoleMenu(Long roleId, Set<Long> menuIds);
/**
* 设置角色的数据权限
*
* @param roleId 角色编号
* @param dataScope 数据范围
* @param dataScopeDeptIds 部门编号数组
*/
void assignRoleDataScope(Long roleId, Integer dataScope, Set<Long> dataScopeDeptIds);
/**
* 处理角色删除时,删除关联授权角色
*

View File

@@ -8,6 +8,7 @@ import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRo
import java.util.Collection;
import java.util.List;
import java.util.Set;
/**
* 角色 Service 接口
@@ -91,4 +92,13 @@ public interface SysRoleService {
*/
void updateRoleStatus(Long id, Integer status);
/**
* 设置角色的数据权限
*
* @param id 角色编号
* @param dataScope 数据范围
* @param dataScopeDeptIds 部门编号数组
*/
void updateRoleDataScope(Long id, Integer dataScope, Set<Long> dataScopeDeptIds);
}

View File

@@ -142,6 +142,11 @@ public class SysPermissionServiceImpl implements SysPermissionService {
}
}
@Override
public void assignRoleDataScope(Long roleId, Integer dataScope, Set<Long> dataScopeDeptIds) {
roleService.updateRoleDataScope(roleId, dataScope, dataScopeDeptIds);
}
@Override
public void processRoleDeleted(Long roleId) {
// TODO 实现我

View File

@@ -23,10 +23,7 @@ import org.springframework.util.StringUtils;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import static cn.iocoder.dashboard.modules.system.enums.SysErrorCodeConstants.*;
@@ -148,6 +145,18 @@ public class SysRoleServiceImpl implements SysRoleService {
roleMapper.updateById(updateObject);
}
@Override
public void updateRoleDataScope(Long id, Integer dataScope, Set<Long> dataScopeDeptIds) {
// 校验是否可以更新
checkUpdateRole(id);
// 更新数据范围
SysRoleDO updateObject = new SysRoleDO();
updateObject.setId(id);
updateObject.setDataScope(dataScope);
updateObject.setDataScopeDeptIds(dataScopeDeptIds);
roleMapper.updateById(updateObject);
}
/**
* 校验角色的唯一字段是否重复
*
@@ -187,7 +196,7 @@ public class SysRoleServiceImpl implements SysRoleService {
}
// 内置角色,不允许删除
if (RoleTypeEnum.SYSTEM.getType().equals(roleDO.getType())) {
throw ServiceExceptionUtil.exception(ROLE_CAN_NOT_DELETE_SYSTEM_TYPE_ROLE);
throw ServiceExceptionUtil.exception(ROLE_CAN_NOT_UPDATE_SYSTEM_TYPE_ROLE);
}
}