# 用户管理 API 文档 本文档描述了用户管理相关的接口规范,包括用户列表查询和状态修改。 ## 1. 全局响应结构 所有接口的返回值均由 `GlobalResponseWrapper` 统一包装,遵循以下 JSON 结构: ```json { "code": 200, // 状态码 (200: 成功, 其他: 失败) "message": "success", // 响应消息 "success": true, // 成功标识 "data": { ... }, // 具体业务数据 "timestamp": 1709628736123 // 响应时间戳 } ``` --- ## 2. 用户列表查询 * **URL**: `/v2/user/list` * **Method**: `GET` * **描述**: 分页查询用户列表,支持多种筛选条件。 ### 请求参数 | 字段名 | 类型 | 必填 | 说明 | | :--- | :--- | :--- | :--- | | `page` | integer | 否 | 页码,默认 1 | | `size` | integer | 否 | 每页大小,默认 10 | | `keyword` | string | 否 | 搜索关键字 (匹配:昵称/邮箱/苹果ID/交易ID) | | `status` | integer | 否 | 状态 0:禁用 1:可用 2:注销 | | `isVip` | integer | 否 | 是否会员 0:否 1:是 | | `platform` | string | 否 | 平台 (如 IOS) | | `createTimeStart` | string | 否 | 创建时间开始 (yyyy-MM-dd HH:mm:ss) | | `createTimeEnd` | string | 否 | 创建时间结束 (yyyy-MM-dd HH:mm:ss) | ### 响应参数 (`data` 字段) 返回 Mybatis-Plus `Page` 对象,包含 `records` (用户列表), `total` (总数), `size` (页大小), `current` (当前页) 等。 `records` 中的用户对象结构如下: | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `id` | long | 用户ID | | `nickname` | string | 用户昵称 | | `email` | string | 用户账号/邮箱 | | `appleUserId` | string | 苹果id | | `originalTransactionId` | string | 交易id | | `lastLoginTime` | string | 最近一次登录时间 | | `lastLoginIp` | string | 最近一次登录IP地址 | | `role` | string | 用户身份信息 | | `status` | integer | 状态 0:禁用 1:可用 2:注销 | | `createTime` | string | 创建时间 | | `updateTime` | string | 更新时间 | | `avatar` | string | 头像 | | `gender` | integer | 性别 0:女 1:男 | | `msgSwitch` | integer | 消息推送开关 | | `commentPermission` | integer | 评论权限 | | `referralCode` | string | 推荐码 | | `loginCount` | long | 登录次数 | | `language` | string | 地区 | | `isVip` | integer | 是否会员 | | `platform` | string | 平台 | --- ## 3. 修改用户状态 * **URL**: `/v2/user/status` * **Method**: `POST` * **Content-Type**: `application/json` * **描述**: 修改用户状态。仅允许设置为禁用 (0) 或可用 (1)。 ### 请求参数 | 字段名 | 类型 | 必填 | 说明 | | :--- | :--- | :--- | :--- | | `id` | long | 是 | 用户ID | | `status` | integer | 是 | 状态 0:禁用 1:可用 | ### 响应参数 | 字段名 | 类型 | 说明 | | :--- | :--- | :--- | | `data` | boolean | 是否成功 |