|
@@ -3,13 +3,18 @@ package com.qmth.sop.server.api;
|
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.qmth.boot.api.constant.ApiConstant;
|
|
|
-import com.qmth.sop.business.bean.dto.UserDto;
|
|
|
+import com.qmth.sop.business.bean.dto.RoleDto;
|
|
|
import com.qmth.sop.business.bean.params.SysRolePrivilegeParams;
|
|
|
+import com.qmth.sop.business.cache.CommonCacheService;
|
|
|
+import com.qmth.sop.business.entity.SysRole;
|
|
|
+import com.qmth.sop.business.entity.SysRolePrivilege;
|
|
|
import com.qmth.sop.business.service.SysRoleService;
|
|
|
import com.qmth.sop.common.contant.SystemConstant;
|
|
|
+import com.qmth.sop.common.enums.ExceptionResultEnum;
|
|
|
import com.qmth.sop.common.util.Result;
|
|
|
import com.qmth.sop.common.util.ResultUtil;
|
|
|
import io.swagger.annotations.*;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.validation.BindingResult;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
@@ -18,6 +23,9 @@ import javax.validation.Valid;
|
|
|
import javax.validation.constraints.Max;
|
|
|
import javax.validation.constraints.Min;
|
|
|
import java.security.NoSuchAlgorithmException;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Optional;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -35,9 +43,12 @@ public class SysRoleController {
|
|
|
@Resource
|
|
|
SysRoleService sysRoleService;
|
|
|
|
|
|
+ @Resource
|
|
|
+ CommonCacheService commonCacheService;
|
|
|
+
|
|
|
@ApiOperation(value = "查询")
|
|
|
@RequestMapping(value = "/list", method = RequestMethod.POST)
|
|
|
- @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = UserDto.class)})
|
|
|
+ @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = RoleDto.class)})
|
|
|
public Result list(@ApiParam(value = "角色名称") @RequestParam(required = false) String name,
|
|
|
@ApiParam(value = "是否启用") @RequestParam(required = false) Boolean enable,
|
|
|
@ApiParam(value = "页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
|
|
@@ -45,6 +56,16 @@ public class SysRoleController {
|
|
|
return ResultUtil.ok(sysRoleService.query(new Page<>(pageNumber, pageSize), name, enable));
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "角色权限查询")
|
|
|
+ @RequestMapping(value = "/privilege/list", method = RequestMethod.POST)
|
|
|
+ @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = SysRolePrivilegeParams.class)})
|
|
|
+ public Result privilegeList(@ApiParam(value = "角色id", required = true) @RequestParam Long roleId) {
|
|
|
+ List<SysRolePrivilege> sysRolePrivilegeList = commonCacheService.rolePrivilegeCache(roleId);
|
|
|
+ SysRole sysRole = commonCacheService.roleCache(roleId);
|
|
|
+ Optional.ofNullable(sysRole).orElseThrow(() -> ExceptionResultEnum.ROLE_NO_EXISTS.exception());
|
|
|
+ return ResultUtil.ok(new SysRolePrivilegeParams(sysRole.getId(), sysRole.getName(), !CollectionUtils.isEmpty(sysRolePrivilegeList) ? sysRolePrivilegeList.stream().map(s -> s.getPrivilegeId()).collect(Collectors.toList()) : null));
|
|
|
+ }
|
|
|
+
|
|
|
@ApiOperation(value = "新增/修改")
|
|
|
@RequestMapping(value = "/save", method = RequestMethod.POST)
|
|
|
@ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
|