Skip to content

分页查询用户列表

接口信息

接口地址:/api/v1/system/user/list

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*

接口描述:

分页查询用户列表,支持按用户名、昵称、邮箱、手机号、状态、角色等条件过滤

请求示例:

javascript
{
  "pageNo": 1,
  "pageSize": 10,
  "queryFilter": {
    "userName": "测试",
    "status": "Enabled",
    "role": "Admin"
  }
}

请求参数

请求头

参数名类型必填描述示例值
AuthorizationstringAPI KeyBearer ak-xxxxeyJhbGciOiJIUzI1NiJ9

请求体参数:

参数名称参数说明是否必须数据类型
pageNo页码integer(int64)
pageSize每页条数integer(int64)
queryFilter查询过滤条件UserQueryDto
  userName用户姓名string
  nickName昵称string
  email邮箱string
  phone手机号码string
  status用户状态,可用值: Enabled, Disabledstring
  role角色,可用值: Admin, Userstring

响应参数:

参数名称参数说明类型schema
code业务状态码,0000 表示成功,其余失败string
displayCode源系统状态码,用于问题跟踪string
message错误描述信息string
data分页数据IPageUserDto
  total总记录数integer(int64)
  current当前页码integer(int64)
  size每页条数integer(int64)
  pages总页数(已废弃)integer(int64)
  records用户列表arrayUserDto
tid跟踪唯一标识string
successboolean

响应示例:

javascript
{
	"code": "0000",
	"displayCode": "0000",
	"message": "成功",
	"data": {
		"total": 795,
		"current": 1,
		"size": 10,
		"records": [
			{
				"id": 1776075291,
				"uid": "",
				"tenantId": 1,
				"userName": "双联系方式用户",
				"nickName": "",
				"avatar": "",
				"password": null,
				"resetPass": 1,
				"status": "Enabled",
				"role": "User",
				"email": "both@example.com",
				"phone": "13800000003",
				"lastLoginTime": null,
				"lang": "zh-CN",
				"created": "2026-04-13T10:14:56.000+00:00",
				"modified": "2026-04-13T10:14:56.000+00:00",
				"langMap": {}
			}
		]
	},
	"tid": "",
	"success": true
}

CURL示例

shell
curl 'http://127.0.0.1:8081/api/v1/system/user/list' \
  -X POST \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer ak-d1f2129c4ba24629b8448af3354f9dd0' \
  --data-raw '{
  "pageNo": 1,
  "pageSize": 10
}'

{"code":"0000","displayCode":"0000","message":"成功","data":{"total":795,"current":1,"size":10,"records":[...]},"tid":"...","success":true}

测试用例

#场景请求体total结果
1默认分页查询pageNo:1, pageSize:10795成功,返回10条记录
2按状态过滤status: Disabled1成功,返回禁用用户
3按角色过滤role: Admin39成功,返回管理员列表
4按用户名模糊搜索userName: 测试1成功,匹配到包含"测试"的用户
5查询第2页pageNo:2, pageSize:3795成功,current为2,返回3条
6组合条件查询role: Admin, status: Enabled39成功,返回启用的管理员

按状态过滤

shell
curl 'http://127.0.0.1:8081/api/v1/system/user/list' \
  -X POST \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer ak-d1f2129c4ba24629b8448af3354f9dd0' \
  --data-raw '{
  "pageNo": 1,
  "pageSize": 5,
  "queryFilter": {"status": "Disabled"}
}'

{"code":"0000","displayCode":"0000","message":"成功","data":{"total":1,"current":1,"size":5,"records":[...]},"tid":"...","success":true}

组合条件查询

shell
curl 'http://127.0.0.1:8081/api/v1/system/user/list' \
  -X POST \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer ak-d1f2129c4ba24629b8448af3354f9dd0' \
  --data-raw '{
  "pageNo": 1,
  "pageSize": 5,
  "queryFilter": {"role": "Admin", "status": "Enabled"}
}'

{"code":"0000","displayCode":"0000","message":"成功","data":{"total":39,"current":1,"size":5,"records":[...]},"tid":"...","success":true}

TS模板示例

ts
// 查询过滤条件
export interface UserQueryDto {
  /* 用户姓名 */
  userName?: string;
  /* 昵称 */
  nickName?: string;
  /* 邮箱 */
  email?: string;
  /* 手机号码 */
  phone?: string;
  /* 用户状态: Enabled, Disabled */
  status?: 'Enabled' | 'Disabled';
  /* 角色: Admin, User */
  role?: 'Admin' | 'User';
}

// 分页查询请求
export interface UserListQuery {
  /* 页码 */
  pageNo: number;
  /* 每页条数 */
  pageSize: number;
  /* 查询过滤条件 */
  queryFilter?: UserQueryDto;
}

// 分页响应数据
export interface IPageUserDto {
  /* 总记录数 */
  total: number;
  /* 当前页码 */
  current: number;
  /* 每页条数 */
  size: number;
  /* 总页数(已废弃) */
  pages: number;
  /* 用户列表 */
  records: UserDto[];
}

// 响应接口
export interface UserListRes {
  code: string;
  displayCode: string;
  message: string;
  data: IPageUserDto;
  tid: string;
  success: boolean;
}

/** 
 * 分页查询用户列表
 * @param {UserListQuery} params 
 * @returns
 */
export function getUserList(params: UserListQuery): Promise<UserListRes> {
  return request.post(`/api/v1/system/user/list`, params);
}