Skip to content

用户管理接口文档

本接口用于对系统中的**用户(User)**资源进行全生命周期管理,遵循 RESTful 设计规范,以 HTTP 方法语义化操作,统一使用 JSON 格式进行数据交互。

资源路径:/system/user-api
实体类:UserDTO(增删改查共用)

公共请求头

⚠️ 注意:本接口需携带有效的 access_token 进行身份验证,未授权访问将被拒绝。

Header 参数(http header

参数名类型必填说明
AuthorizationString请求令牌,Bearer <access_token>

接口列表

操作方法路径说明
创建用户POST/system/user-api新增一个系统用户
查询用户GET/system/user-api/{id}根据 id 获取用户详情
更新用户PUT/system/user-api全量更新用户信息
删除用户DELETE/system/user-api/{id}根据 id 删除用户

实体类定义(UserDTO)

所有接口的请求体(Request Body)或返回数据(Response Data)均基于以下结构:

JSON 示例

点击展开 JSON 数据
json
{
  "roleIds": [
    2
  ],
  "postIds": [],
  "user": {
    "tenantId": "000000",
    "userId": "1951108854518575106",
    "deptId": 100,
    "userName": "zhao**",
    "password": "******",
    "nickName": "赵某某",
    "email": "",
    "phonenumber": "",
    "sex": "0",
    "avatar": "",
    "status": "0"
  }
}

主体结构说明

参数名类型说明
roleIdsInteger[]分配的角色 ID 列表(如 [2]
postIdsInteger[]分配的岗位 ID 列表(如 [3]
userObject用户基本信息

⚠️ 注意:

  • 创建(POST)时:必须提供 userroleIds(至少一个角色);
  • 更新(PUT)时:需提供完整结构,包含 userId
  • 查询(GET)时:返回扩展信息(如部门、角色详情等,见实际响应);
  • 密码字段仅在创建时有效,更新时通常忽略

用户基本信息

参数名类型必填说明
userIdString用户 ID(创建时不传,由服务端生成)
userNameString登录账号(唯一)
passwordString是(仅创建)登录密码(明文,服务端加密存储)
nickNameString昵称
emailString邮箱
phonenumberString手机号
sexString性别("0" 男,"1" 女,"2" 未知)
avatarString头像 URL
statusString状态("0" 正常,"1" 停用)
deptIdNumber所属部门 ID
tenantIdString所属租户编码

🔒 安全提示:password 字段不会出现在查询响应中(已被 @JsonIgnore 过滤)。


接口详情

创建用户(POST)

请求

http
POST /system/user-api
Content-Type: application/json
Authorization: Bearer <token>
点击展开 JSON 数据
json
{
  "roleIds": [
    2
  ],
  "postIds": [
    3
  ],
  "user": {
    "tenantId": "000000",
    "deptId": 100,
    "userName": "newuser01",
    "password": "123456",
    "nickName": "新用户",
    "email": "newuser@example.com",
    "phonenumber": "13800138000",
    "sex": "0",
    "status": "0"
  }
}

响应

点击展开 JSON 数据
json
{
  "code": 200,
  "msg": "操作成功",
  "data": null
}

查询用户(GET)

请求

http
GET /system/user-api/1951108854518575106
Authorization: Bearer <token>

路径参数

参数位置必填说明
idpath用户的系统内部 ID

响应

返回包含 userrolespostsdept 等完整信息的对象(参考你提供的完整 JSON 结构)。
注意:password 字段不会出现

点击展开 JSON 数据(简化版)
json
{
  "code": 200,
  "msg": "操作成功",
  "data": {
    "roleIds": [
      2
    ],
    "postIds": [],
    "roles": [
      /* 所有可用角色 */
    ],
    "posts": [
      /* 所有岗位 */
    ],
    "user": {
      "userId": "1951108854518575106",
      "userName": "zhao**",
      "nickName": "赵某某",
      "deptId": 100,
      "status": "0",
      "dept": {
        /* 部门详情 */
      },
      "roles": [
        /* 已分配角色详情 */
      ]
    }
  }
}

更新用户(PUT)

请求

http
PUT /system/user-api
Content-Type: application/json
Authorization: Bearer <token>
点击展开 JSON 数据
json
{
  "roleIds": [
    2,
    1949770609288851458
  ],
  "postIds": [
    2
  ],
  "user": {
    "userId": "1951108854518575106",
    "tenantId": "000000",
    "deptId": 100,
    "userName": "zhao**",
    "nickName": "赵某某-更新",
    "email": "updated@example.com",
    "phonenumber": "13900139000",
    "sex": "0",
    "status": "0"
  }
}

🔁 注意:

  • 必须包含 userId
  • password 字段在此操作中无效(如需改密,应调用独立“修改密码”接口);
  • 此为全量更新,未传字段可能被重置。

响应

点击展开 JSON 数据
json
{
  "code": 200,
  "msg": "操作成功",
  "data": null
}

删除用户(DELETE)

请求

http
DELETE /system/user-api/1951108854518575106
Authorization: Bearer <token>

路径参数

参数位置必填说明
idpath用户的系统 ID

响应

点击展开 JSON 数据
json
{
  "code": 200,
  "msg": "操作成功",
  "data": null
}

安全与注意事项

  • 密码安全password 字段仅在创建用户时接受,且绝不会返回给前端(通过 @JsonIgnore 自动过滤)。
  • 权限控制:当前用户只能管理同租户下的用户,跨租户操作将被拒绝。
  • 状态管理:停用用户(status = "1")后,该账号无法登录。