Commit 6c4293bf by zhu.zewen

用户列表查询接口新增按组织和角色筛选

parent f8dab141
......@@ -8,9 +8,13 @@ import lombok.Data;
@Data
@ApiModel(value = "UserQueryReq", description = "用户查询")
public class UserQueryReq extends PageReq {
@ApiModelProperty(value = "用户名称")
private String keyword;
@ApiModelProperty(value = "组织ID列表(逗号隔开)")
private String deptList;
@ApiModelProperty(value = "角色ID列表(逗号隔开)")
private String roleList;
@ApiModelProperty(value = "状态:0 - 禁用,1 - 启用")
private Integer status;
}
}
\ No newline at end of file
......@@ -278,12 +278,28 @@ public class UserServiceImpl extends AbstractService implements UserService {
}
private Wrapper<SysUser> buildQuery(UserQueryReq req) {
return Wrappers.lambdaQuery(SysUser.class)
LambdaQueryWrapper<SysUser> query = Wrappers.lambdaQuery(SysUser.class)
.like(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getName, req.getKeyword()).or()
.eq(ObjectUtil.isNotEmpty(req.getKeyword()), SysUser::getMobile, req.getKeyword())
// 过滤非系统管理员
.ne(!SpringContextUtils.isPlatformAdmin(), SysUser::getType, PLATFORM_ADMIN.getCode())
.eq(ObjectUtil.isNotEmpty(req.getStatus()), SysUser::getStatus, req.getStatus()).orderByDesc(SysUser::getCreateTime);
.eq(ObjectUtil.isNotEmpty(req.getStatus()), SysUser::getStatus, req.getStatus());
// 按组织ID列表查询
List<Long> deptList = extractLongList(req.getDeptList());
query.eq(ObjectUtil.isNotEmpty(deptList), SysUser::getDeptId, deptList.get(0));
// 按角色ID列表查询
List<Long> roleList = extractLongList(req.getRoleList());
if (ObjectUtil.isNotEmpty(roleList)) {
query.and(wrapper ->
roleList.stream()
.filter(ObjectUtil::isNotEmpty)
.forEach(roleId -> wrapper.or().like(SysUser::getRoleList, roleId))
);
}
return query.orderByDesc(SysUser::getCreateTime);
}
@Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment