diff --git a/chaos_api_interface/src/main/java/cn/nopj/chaos_api/service/RoleService.java b/chaos_api_interface/src/main/java/cn/nopj/chaos_api/service/RoleService.java index 6760e70..f9ebe48 100644 --- a/chaos_api_interface/src/main/java/cn/nopj/chaos_api/service/RoleService.java +++ b/chaos_api_interface/src/main/java/cn/nopj/chaos_api/service/RoleService.java @@ -1,5 +1,6 @@ package cn.nopj.chaos_api.service; +import cn.nopj.chaos_api.dto.response.OptionResponse; import cn.nopj.chaos_api.dto.response.RoleResponse; import java.util.List; @@ -9,5 +10,5 @@ public interface RoleService { * 获取所有角色 * @return 所有角色 */ - List getAllRoles(); + List getAllRoles(); } diff --git a/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/DeviceTypeServiceImpl.java b/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/DeviceTypeServiceImpl.java index dbe82e7..b8061b2 100644 --- a/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/DeviceTypeServiceImpl.java +++ b/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/DeviceTypeServiceImpl.java @@ -27,7 +27,6 @@ public class DeviceTypeServiceImpl extends ServiceImpl getDeviceTypeOptions() { - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); return this.lambdaQuery() .select(DeviceType::getId, DeviceType::getName) .list() diff --git a/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/RoleServiceImpl.java b/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/RoleServiceImpl.java index 66500eb..8db6092 100644 --- a/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/RoleServiceImpl.java +++ b/chaos_api_service/src/main/java/cn/nopj/chaos_api/service/impl/RoleServiceImpl.java @@ -1,6 +1,7 @@ package cn.nopj.chaos_api.service.impl; import cn.nopj.chaos_api.domain.entity.Role; +import cn.nopj.chaos_api.dto.response.OptionResponse; import cn.nopj.chaos_api.dto.response.RoleResponse; import cn.nopj.chaos_api.mapper.RoleMapper; import cn.nopj.chaos_api.service.RoleService; @@ -12,7 +13,13 @@ import java.util.List; @Service public class RoleServiceImpl extends ServiceImpl implements RoleService { @Override - public List getAllRoles() { - return this.baseMapper.selectList(null).stream().map(RoleResponse::new).toList(); + public List getAllRoles() { + + return this.lambdaQuery() + .select(Role::getId, Role::getName) + .list() + .stream() + .map(role -> new OptionResponse(role.getName(), role.getId().toString())) + .toList(); } } diff --git a/chaos_api_web/src/main/java/cn/nopj/chaos_api/controller/RoleController.java b/chaos_api_web/src/main/java/cn/nopj/chaos_api/controller/RoleController.java index 9bfb477..cf930e4 100644 --- a/chaos_api_web/src/main/java/cn/nopj/chaos_api/controller/RoleController.java +++ b/chaos_api_web/src/main/java/cn/nopj/chaos_api/controller/RoleController.java @@ -2,6 +2,7 @@ package cn.nopj.chaos_api.controller; import cn.nopj.chaos_api.dto.request.SetUserRoleRequest; +import cn.nopj.chaos_api.dto.response.OptionResponse; import cn.nopj.chaos_api.dto.response.RoleResponse; import cn.nopj.chaos_api.model.ApiResult; import cn.nopj.chaos_api.service.RoleService; @@ -10,10 +11,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -23,7 +21,7 @@ import java.util.List; */ @Slf4j @RestController -@RequestMapping("/api/role") +@RequestMapping("/api/roles") public class RoleController { @Autowired @@ -32,13 +30,24 @@ public class RoleController { @Autowired private RoleService roleService; + + /** + * 获取用户角色 + */ + @PreAuthorize("hasAuthority('admin')") + @GetMapping + public ApiResult> getUserRole() { + + return ApiResult.success(roleService.getAllRoles()); + } + /** * 设置用户角色 * @param request 请求参数 * @return 处理结果 */ @PreAuthorize("hasAuthority('admin')") - @RequestMapping("/setUserRole") + @PostMapping("/users") public ApiResult assignRolesToUser(@RequestBody @Validated SetUserRoleRequest request) { userRoleService.assignRolesToUser(request); return ApiResult.success("用户角色设置成功"); @@ -49,17 +58,10 @@ public class RoleController { * @return 处理结果 */ @PreAuthorize("hasAuthority('admin')") - @RequestMapping("/cancelUserRole") + @DeleteMapping("/users") public ApiResult revokeRolesFromUser(@RequestBody @Validated SetUserRoleRequest request) { return ApiResult.success("用户角色取消成功",userRoleService.revokeRolesFromUser(request)); } - /** - * 获取用户角色 - */ - @PreAuthorize("hasAuthority('admin')") - @GetMapping("/") - public ApiResult> getUserRole() { - return ApiResult.success(roleService.getAllRoles()); - } + }