强制修改用户信息 
接口地址 
/auth/forceUpdateInfo
传入参数 
• 要求鉴权:是(Permission: USER_UPDATE)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:用户信息修改授权
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| user_id | 用户ID | 是 | str | 
| 邮箱 | 否 | str | |
| phone | 手机 | 否 | str | 
| name | 姓名 | 否 | str | 
| gender | 性别 | 否 | str | 
| work_years | 工龄 | 否 | int | 
| department | 部门 | 否 | str | 
| faceInfo | 人脸识别信息 | 否 | str | 
返回值——成功 
{
  "code": 0,
  "msg": "用户信息修改成功",
  "data": {
    "user_id": "1",
    "email": "..."
  }
}INFO
返回 user 信息字典,具体字段:
export type Role = {
    role_id: number,
    role_name: string,
    description: string,
}
export type Permission = {
    permission_id: number,
    permission_name: string,
    description: string,
}
export type RolePermission = {
    role: Role,
    permissions: Permission[]
}
export interface AdminUserDTO {
    user_id: string;
    username: string;
    email?: string;
    phone?: string;
    faceInfo?: string;
    status?: boolean;
    last_login?: Date ;
    created_at?: Date ;
    updated_at?: Date ;
    name?: string;
    gender?: string;
    department?: string;
    work_years?: number;
    contact_info?: string;
}
export interface AdminUserDTOWithRolesAndPermissions extends AdminUserDTO {
    roles: Role[],
    permissions: Permission[]
}请求示例 
fetch("/api/auth/forceUpdateInfo", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "user_id": "1",
        "email": "test@demo.com",
        "name": "张三"
    })
});修改密码 
接口地址 
/auth/updatePassword
传入参数 
• 要求鉴权:是(JWT)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:无,仅登录
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| password | 原密码 | 是 | str | 
| newPassword | 新密码 | 是 | str | 
返回值——成功 
{
  "code": 0,
  "data": true,
  "msg": "密码更新成功"
}返回值——原密码错误 
{
  "code": 1,
  "data": null,
  "msg": "原密码错误"
}请求示例 
fetch("/api/auth/updatePassword", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "password": "oldpass",
        "newPassword": "newpass456"
    })
});管理员强制重置指定用户密码 
接口地址 
/auth/forceUpdateUserPassword
传入参数 
• 要求鉴权:是(Permission: USER_READ_ALL)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:用户管理权限
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| password | 新密码 | 是 | str | 
| userId | 用户ID | 是 | str | 
返回值——成功 
{
  "code": 0,
  "data": true,
  "msg": "密码更新成功"
}请求示例 
fetch("/api/auth/forceUpdateUserPassword", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "userId": "123",
        "password": "newpass123"
    })
});获取全部用户信息分页 
接口地址 
/auth/getAllUserInfo
传入参数 
• 要求鉴权:是(Permission: USER_READ_ALL)
• 请求方式:GET
• 传入方式:Query参数
• 要求权限:用户列表读取
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| username | 用户账号 | 否 | str | 
| name | 姓名 | 否 | str | 
| 邮箱 | 否 | str | |
| pageNum | 页码 | 否 | int | 
| pageSize | 单页数量 | 否 | int | 
返回值——成功 
{
  "code": 0,
  "msg": "用户信息获取成功",
  "data": {
    "data": [
      {
        "user_id": "1",
        "username": "...",
        "roles": [],
        "permissions": []
      }
    ],
    "pagination": {
      "pageNum": 1,
      "pageSize": 10,
      "total": 100
    }
  }
}请求示例 
fetch("/api/auth/getAllUserInfo?pageNum=1&pageSize=20&username=xiaoming", {
    headers: {
        "Authorization": "Bearer your_jwt_token"
    }
});获取全部权限列表 
接口地址 
/auth/getPermissionList
传入参数 
• 要求鉴权:是(Permission: PERMISSIONS_MANAGEMENT)
• 请求方式:GET
• 传入方式:无
• 要求权限:权限管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| 无 | - | - | - | 
返回值——成功 
{
  "code": 0,
  "msg": "用户信息获取成功",
  "data": [
    {
      "permission_id": 1,
      "permission_name": "xxxx",
      "description": "..."
    }
  ]
}请求示例 
fetch("/api/auth/getPermissionList", {
    headers: {"Authorization": "Bearer your_jwt_token"}
});获取所有角色及对应权限 
接口地址 
/auth/getRolePermList
传入参数 
• 要求鉴权:是(Permission: PERMISSIONS_MANAGEMENT)
• 请求方式:GET
• 传入方式:无
• 要求权限:权限管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| 无 | - | - | - | 
返回值——成功 
{
  "code": 0,
  "msg": "全部角色及权限获取成功",
  "data": [
    {
      "role": {
        "role_id": 1,
        "role_name": "管理员",
        "description": ""
      },
      "permissions": [
        {
          "permission_id": 1,
          "permission_name": "...",
          "description": ""
        }
      ]
    }
  ]
}请求示例 
fetch("/api/auth/getRolePermList", {
    headers: {"Authorization": "Bearer your_jwt_token"}
});修改用户状态 
接口地址 
/auth/updateUserStatus
传入参数 
• 要求鉴权:是(Permission: USER_READ_ALL)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:用户管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| userId | 用户ID | 是 | str | 
| status | 用户状态 | 是 | bool | 
返回值——成功 
{
  "code": 0,
  "msg": "用户状态更新成功",
  "data": true
}请求示例 
fetch("/api/auth/updateUserStatus", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "userId": "2",
        "status": true
    })
});修改角色权限 
接口地址 
/auth/updateRolePerm
传入参数 
• 要求鉴权:是(Permission: PERMISSIONS_MANAGEMENT)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:权限管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| roleId | 角色ID | 是 | int | 
| permIds | 权限ID数组 | 是 | int数组 | 
返回值——成功 
{
  "code": 0,
  "msg": "角色权限更新成功",
  "data": true
}请求示例 
fetch("/api/auth/updateRolePerm", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "roleId": 1,
        "permIds": [1, 2, 3]
    })
});修改用户角色 
接口地址 
/auth/updateUserRole
传入参数 
• 要求鉴权:是(Permission: USER_READ_ALL)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:用户管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| userId | 用户ID | 是 | str | 
| roleIds | 角色ID数组 | 是 | int数组 | 
返回值——成功 
{
  "code": 0,
  "msg": "用户角色更新成功",
  "data": true
}请求示例 
fetch("/api/auth/updateUserRole", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "userId": "100",
        "roleIds": [2, 3]
    })
});新建角色 
接口地址 
/auth/createRole
传入参数 
• 要求鉴权:是(Permission: PERMISSIONS_MANAGEMENT)
• 请求方式:POST
• 传入方式:JSON
• 要求权限:权限管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| role_name | 角色名称 | 是 | str | 
| description | 角色描述 | 否 | str | 
返回值——成功 
{
  "code": 0,
  "msg": "角色创建成功",
  "data": true
}请求示例 
fetch("/api/auth/createRole", {
    method: "POST",
    headers: {
        "Authorization": "Bearer your_jwt_token",
        "Content-Type": "application/json"
    },
    body: JSON.stringify({
        "role_name": "质检员",
        "description": "主要负责检查工作"
    })
});删除角色 
接口地址 
/auth/deleteRole/<int:roleId>
传入参数 
• 要求鉴权:视系统策略
• 请求方式:DELETE
• 传入方式:路径参数
• 要求权限:权限管理
| 参数名 | 描述 | 是否必须 | 类型 | 
|---|---|---|---|
| roleId | 角色ID | 是 | int | 
返回值——成功 
{
  "code": 0,
  "msg": "角色删除成功",
  "data": true
}请求示例 
fetch("/api/auth/deleteRole/3", {
    method: "DELETE",
    headers: {
        "Authorization": "Bearer your_jwt_token"
    }
});