feat(admin): 添加系统用户详情接口并优化用户删除逻辑

- 新增系统用户详情接口,通过 GET 请求获取用户信息
- 在用户删除接口中增加对超级管理员的保护,禁止删除
- 修正 ID 列表验证注解,使用 @NotNull 替代 @NotBlank
This commit is contained in:
FallingCliff 2025-05-28 18:46:48 +08:00
parent 330cabdeb4
commit b5fb8071cc
2 changed files with 11 additions and 2 deletions

View File

@ -34,9 +34,18 @@ public class SystemUserController {
return Result.ok(iAdminService.pageList(pageRequest, query)); return Result.ok(iAdminService.pageList(pageRequest, query));
} }
@GetMapping("/user/detail")
@ApiOperation("系统用户详情")
public Result<AdminVO> getAdminUserDetail(@RequestParam Long id) {
return Result.ok(BeanUtil.copyProperties(iAdminService.getById(id), AdminVO.class));
}
@DeleteMapping("/user/delete") @DeleteMapping("/user/delete")
@ApiOperation("批量删除系统用户") @ApiOperation("批量删除系统用户")
public Result<?> deleteAdminUsers(@Validated @RequestBody IdListDTO idList) { public Result<?> deleteAdminUsers(@Validated @RequestBody IdListDTO idList) {
if (idList.getIdList().contains(1)) {
return Result.fail("存在超级管理员,禁止删除");
}
return Result.ok(iAdminService.removeByIds(idList.getIdList())); return Result.ok(iAdminService.removeByIds(idList.getIdList()));
} }
@PostMapping("/user/add") @PostMapping("/user/add")

View File

@ -2,12 +2,12 @@ package com.example.admin_server.model.dto;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull;
import java.util.List; import java.util.List;
@Data @Data
public class IdListDTO { public class IdListDTO {
@NotBlank(message = "ID列表不能为空") @NotNull(message = "ID列表不能为空")
private List<Integer> idList; private List<Integer> idList;
} }