完成角色权限分配功能的迁移

This commit is contained in:
YunaiV
2020-07-13 19:24:42 +08:00
parent 99c591d6f9
commit 61e5cfe617
54 changed files with 314 additions and 691 deletions

View File

@@ -33,7 +33,7 @@ public class AdminController {
@ApiOperation(value = "管理员分页")
@GetMapping("/page")
@RequiresPermissions("system.admin.page")
@RequiresPermissions("system:page")
public CommonResult<PageResult<AdminPageItemVO>> page(AdminPageDTO adminPageDTO) {
return success(adminManager.pageAdmin(adminPageDTO));
}

View File

@@ -3,4 +3,9 @@ GET {{baseUrl}}/permission/list-role-resource?roleId=1
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer {{accessToken}}
### /permission/list-admin-roles 成功
GET {{baseUrl}}/permission/list-admin-roles?adminId=1
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer {{accessToken}}
###

View File

@@ -1,6 +1,7 @@
package cn.iocoder.mall.managementweb.controller.permission;
import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.mall.managementweb.controller.permission.dto.PermissionAssignAdminRoleDTO;
import cn.iocoder.mall.managementweb.controller.permission.dto.PermissionAssignRoleResourceDTO;
import cn.iocoder.mall.managementweb.manager.permission.PermissionManager;
import io.swagger.annotations.Api;
@@ -29,11 +30,11 @@ public class PermissionController {
@Autowired
private PermissionManager permissionManager;
@GetMapping("/list-role-resource")
@GetMapping("/list-role-resources")
@ApiOperation("获得角色拥有的资源编号")
@ApiImplicitParam(name = "roleId", value = "角色编号", required = true)
public CommonResult<Set<Integer>> listRoleResource(Integer roleId) {
return success(permissionManager.listRoleResource(roleId));
public CommonResult<Set<Integer>> listRoleResources(Integer roleId) {
return success(permissionManager.listRoleResources(roleId));
}
@PostMapping("/assign-role-resource")
@@ -43,4 +44,18 @@ public class PermissionController {
return success(true);
}
@GetMapping("/list-admin-roles")
@ApiOperation("获得管理员拥有的角色编号列表")
@ApiImplicitParam(name = "adminId", value = "管理员编号", required = true)
public CommonResult<Set<Integer>> listAdminRoles(Integer adminId) {
return success(permissionManager.listAdminRoles(adminId));
}
@PostMapping("/assign-admin-role")
@ApiOperation("赋予用户角色")
public CommonResult<Boolean> assignAdminRole(PermissionAssignAdminRoleDTO assignAdminRoleDTO) {
permissionManager.assignAdminRole(assignAdminRoleDTO);
return success(true);
}
}

View File

@@ -61,8 +61,8 @@ public class ResourceController {
@GetMapping("/list")
@ApiOperation("获得资源列表")
@ApiImplicitParam(name = "resourceId", value = "资源编号列表", required = true)
public CommonResult<List<ResourceVO>> listResource(@RequestParam("resourceIds") List<Integer> resourceIds) {
return success(resourceManager.listResource(resourceIds));
public CommonResult<List<ResourceVO>> listResources(@RequestParam("resourceIds") List<Integer> resourceIds) {
return success(resourceManager.listResources(resourceIds));
}
@GetMapping("/tree")

View File

@@ -24,6 +24,11 @@ GET {{baseUrl}}/role/get?roleId=13
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer {{accessToken}}
### /role/list-all 成功
GET {{baseUrl}}/role/list-all
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer {{accessToken}}
### /role/list 成功
GET {{baseUrl}}/role/list?roleIds=1,13
Content-Type: application/x-www-form-urlencoded

View File

@@ -60,11 +60,17 @@ public class RoleController {
return success(roleManager.getRole(roleId));
}
@GetMapping("/list-all")
@ApiOperation("获得所有角色列表")
public CommonResult<List<RoleVO>> listAllRoles() {
return success(roleManager.listAllRoles());
}
@GetMapping("/list")
@ApiOperation("获得角色列表")
@ApiImplicitParam(name = "roleIds", value = "角色编号列表", required = true)
public CommonResult<List<RoleVO>> getRoles(@RequestParam("roleIds") List<Integer> roleIds) {
return success(roleManager.listRole(roleIds));
public CommonResult<List<RoleVO>> listRoles(@RequestParam("roleIds") List<Integer> roleIds) {
return success(roleManager.listRoles(roleIds));
}
@GetMapping("/page")

View File

@@ -0,0 +1,20 @@
package cn.iocoder.mall.managementweb.controller.permission.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.Set;
@ApiModel("赋予用户角色 DTO")
@Data
public class PermissionAssignAdminRoleDTO {
@ApiModelProperty(value = "管理员编号", required = true, example = "1")
@NotNull(message = "管理员编号不能为空")
private Integer adminId;
@ApiModelProperty(value = "角色编号列表", example = "1,3,5")
private Set<Integer> roleIds;
}

View File

@@ -11,10 +11,10 @@ import java.util.Set;
@Data
public class PermissionAssignRoleResourceDTO {
@ApiModelProperty(value = "角色名", required = true, example = "管理员")
@ApiModelProperty(value = "角色名", required = true, example = "1")
@NotNull(message = "角色编号不能为空")
private Integer roleId;
@ApiModelProperty(value = "资源编号列表", required = true, example = "1,3,5")
@ApiModelProperty(value = "资源编号列表", example = "1,3,5")
private Set<Integer> resourceIds;
}

View File

@@ -1,5 +1,6 @@
package cn.iocoder.mall.managementweb.convert.permission;
import cn.iocoder.mall.systemservice.rpc.permission.dto.PermissionAssignAdminRoleDTO;
import cn.iocoder.mall.systemservice.rpc.permission.dto.PermissionAssignRoleResourceDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
@@ -11,4 +12,6 @@ public interface PermissionConvert {
PermissionAssignRoleResourceDTO convert(cn.iocoder.mall.managementweb.controller.permission.dto.PermissionAssignRoleResourceDTO bean);
PermissionAssignAdminRoleDTO convert(cn.iocoder.mall.managementweb.controller.permission.dto.PermissionAssignAdminRoleDTO bean);
}

View File

@@ -1,6 +1,7 @@
package cn.iocoder.mall.managementweb.manager.permission;
import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.mall.managementweb.controller.permission.dto.PermissionAssignAdminRoleDTO;
import cn.iocoder.mall.managementweb.controller.permission.dto.PermissionAssignRoleResourceDTO;
import cn.iocoder.mall.managementweb.convert.permission.PermissionConvert;
import cn.iocoder.mall.systemservice.rpc.permission.PermissionRpc;
@@ -19,15 +20,15 @@ public class PermissionManager {
private PermissionRpc permissionRpc;
/**
* 获得角色拥有的资源编号
* 获得角色拥有的资源编号列表
*
* @param roleId 角色编号
* @return 资源编号列表
*/
public Set<Integer> listRoleResource(Integer roleId) {
CommonResult<Set<Integer>> listAdminRoleIdsResult = permissionRpc.listRoleResourceId(roleId);
listAdminRoleIdsResult.checkError();
return listAdminRoleIdsResult.getData();
public Set<Integer> listRoleResources(Integer roleId) {
CommonResult<Set<Integer>> listRoleResourceIdsResult = permissionRpc.listRoleResourceIds(roleId);
listRoleResourceIdsResult.checkError();
return listRoleResourceIdsResult.getData();
}
/**
@@ -41,4 +42,27 @@ public class PermissionManager {
assignRoleResourceResult.checkError();
}
/**
* 赋予用户角色
*
* @param assignAdminRoleDTO 赋予用户角色 DTO
*/
public void assignAdminRole(PermissionAssignAdminRoleDTO assignAdminRoleDTO) {
CommonResult<Boolean> assignAdminRoleResult = permissionRpc.assignAdminRole(
PermissionConvert.INSTANCE.convert(assignAdminRoleDTO));
assignAdminRoleResult.checkError();
}
/**
* 获得用户拥有的角色编号列表
*
* @param adminId 管理员编号
* @return 角色编号列表
*/
public Set<Integer> listAdminRoles(Integer adminId) {
CommonResult<Set<Integer>> listAdminRoleIdsResult = permissionRpc.listAdminRoleIds(adminId);
listAdminRoleIdsResult.checkError();
return listAdminRoleIdsResult.getData();
}
}

View File

@@ -79,7 +79,7 @@ public class ResourceManager {
* @param resourceIds 资源编号列表
* @return 资源列表
*/
public List<ResourceVO> listResource(List<Integer> resourceIds) {
public List<ResourceVO> listResources(List<Integer> resourceIds) {
CommonResult<List<cn.iocoder.mall.systemservice.rpc.permission.vo.ResourceVO>> listResourceResult = resourceRpc.listResource(resourceIds);
return ResourceConvert.INSTANCE.convertList(listResourceResult.getData());
}

View File

@@ -66,14 +66,25 @@ public class RoleManager {
return RoleConvert.INSTANCE.convert(getRoleResult.getData());
}
/**
* 获得所有角色
*
* @return 角色列表
*/
public List<RoleVO> listAllRoles() {
CommonResult<List<cn.iocoder.mall.systemservice.rpc.permission.vo.RoleVO>> listRoleResult = roleRpc.listAllRoles();
listRoleResult.checkError();
return RoleConvert.INSTANCE.convertList(listRoleResult.getData());
}
/**
* 获得角色列表
*
* @param roleIds 角色编号列表
* @return 角色列表
*/
public List<RoleVO> listRole(List<Integer> roleIds) {
CommonResult<List<cn.iocoder.mall.systemservice.rpc.permission.vo.RoleVO>> listRoleResult = roleRpc.listRole(roleIds);
public List<RoleVO> listRoles(List<Integer> roleIds) {
CommonResult<List<cn.iocoder.mall.systemservice.rpc.permission.vo.RoleVO>> listRoleResult = roleRpc.listRoles(roleIds);
listRoleResult.checkError();
return RoleConvert.INSTANCE.convertList(listRoleResult.getData());
}