限制部门与用户的全量查询
This commit is contained in:
@@ -37,6 +37,7 @@ public class DeptController {
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private DeptService deptService;
|
private DeptService deptService;
|
||||||
|
private static final int SIMPLE_LIST_LIMIT = 100;
|
||||||
|
|
||||||
@PostMapping("create")
|
@PostMapping("create")
|
||||||
@Operation(summary = "创建部门")
|
@Operation(summary = "创建部门")
|
||||||
@@ -85,7 +86,8 @@ public class DeptController {
|
|||||||
@Operation(summary = "获取部门精简信息列表", description = "只包含被开启的部门,主要用于前端的下拉选项")
|
@Operation(summary = "获取部门精简信息列表", description = "只包含被开启的部门,主要用于前端的下拉选项")
|
||||||
public CommonResult<List<DeptSimpleRespVO>> getSimpleDeptList() {
|
public CommonResult<List<DeptSimpleRespVO>> getSimpleDeptList() {
|
||||||
List<DeptDO> list = deptService.getDeptList(
|
List<DeptDO> list = deptService.getDeptList(
|
||||||
new DeptListReqVO().setStatus(CommonStatusEnum.ENABLE.getStatus()));
|
new DeptListReqVO().setStatus(CommonStatusEnum.ENABLE.getStatus())
|
||||||
|
.setLimit(SIMPLE_LIST_LIMIT));
|
||||||
return success(BeanUtils.toBean(list, DeptSimpleRespVO.class));
|
return success(BeanUtils.toBean(list, DeptSimpleRespVO.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,4 +26,7 @@ public class DeptListReqVO {
|
|||||||
|
|
||||||
@Schema(description = "部门编号集合,支持多部门查询", example = "[\"1001\", \"1002\"]")
|
@Schema(description = "部门编号集合,支持多部门查询", example = "[\"1001\", \"1002\"]")
|
||||||
private List<String> ids;
|
private List<String> ids;
|
||||||
|
|
||||||
|
@Schema(description = "最大返回数量限制", example = "100")
|
||||||
|
private Integer limit;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ public class UserController {
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private AdminUserService userService;
|
private AdminUserService userService;
|
||||||
|
private static final int SIMPLE_LIST_LIMIT = 100;
|
||||||
|
|
||||||
@PostMapping("/create")
|
@PostMapping("/create")
|
||||||
@Operation(summary = "新增用户")
|
@Operation(summary = "新增用户")
|
||||||
@@ -94,7 +95,7 @@ public class UserController {
|
|||||||
@GetMapping({"/list-all-simple", "/simple-list"})
|
@GetMapping({"/list-all-simple", "/simple-list"})
|
||||||
@Operation(summary = "获取用户精简信息列表", description = "只包含被开启的用户,主要用于前端的下拉选项")
|
@Operation(summary = "获取用户精简信息列表", description = "只包含被开启的用户,主要用于前端的下拉选项")
|
||||||
public CommonResult<List<UserSimpleRespVO>> getSimpleUserList() {
|
public CommonResult<List<UserSimpleRespVO>> getSimpleUserList() {
|
||||||
List<AdminUserDO> list = userService.getUserListByStatus(CommonStatusEnum.ENABLE.getStatus());
|
List<AdminUserDO> list = userService.getUserListByStatus(CommonStatusEnum.ENABLE.getStatus(), SIMPLE_LIST_LIMIT);
|
||||||
return success(UserConvert.INSTANCE.convertSimpleList(list));
|
return success(UserConvert.INSTANCE.convertSimpleList(list));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -36,6 +36,11 @@ public interface DeptMapper extends BaseMapperX<DeptDO> {
|
|||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
query.inIfPresent(DeptDO::getId, ids);
|
query.inIfPresent(DeptDO::getId, ids);
|
||||||
}
|
}
|
||||||
|
query.orderByAsc(DeptDO::getSort);
|
||||||
|
Integer limit = reqVO.getLimit();
|
||||||
|
if (limit != null && limit > 0) {
|
||||||
|
query.last("LIMIT " + limit);
|
||||||
|
}
|
||||||
return selectList(query);
|
return selectList(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -60,8 +60,13 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
|
|||||||
return selectList(new LambdaQueryWrapperX<AdminUserDO>().like(AdminUserDO::getNickname, nickname));
|
return selectList(new LambdaQueryWrapperX<AdminUserDO>().like(AdminUserDO::getNickname, nickname));
|
||||||
}
|
}
|
||||||
|
|
||||||
default List<AdminUserDO> selectListByStatus(Integer status) {
|
default List<AdminUserDO> selectListByStatus(Integer status, Integer limit) {
|
||||||
return selectList(AdminUserDO::getStatus, status);
|
LambdaQueryWrapperX<AdminUserDO> query = new LambdaQueryWrapperX<AdminUserDO>()
|
||||||
|
.eq(AdminUserDO::getStatus, status);
|
||||||
|
if (limit != null && limit > 0) {
|
||||||
|
query.last("LIMIT " + limit);
|
||||||
|
}
|
||||||
|
return selectList(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -193,7 +193,11 @@ public interface AdminUserService {
|
|||||||
* @param status 状态
|
* @param status 状态
|
||||||
* @return 用户们
|
* @return 用户们
|
||||||
*/
|
*/
|
||||||
List<AdminUserDO> getUserListByStatus(Integer status);
|
List<AdminUserDO> getUserListByStatus(Integer status, Integer limit);
|
||||||
|
|
||||||
|
default List<AdminUserDO> getUserListByStatus(Integer status) {
|
||||||
|
return getUserListByStatus(status, null);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 判断密码是否匹配
|
* 判断密码是否匹配
|
||||||
|
|||||||
@@ -651,8 +651,8 @@ public class AdminUserServiceImpl implements AdminUserService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<AdminUserDO> getUserListByStatus(Integer status) {
|
public List<AdminUserDO> getUserListByStatus(Integer status, Integer limit) {
|
||||||
List<AdminUserDO> users = userMapper.selectListByStatus(status);
|
List<AdminUserDO> users = userMapper.selectListByStatus(status, limit);
|
||||||
fillUserDeptInfo(users);
|
fillUserDeptInfo(users);
|
||||||
return users;
|
return users;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user