888 lines
19 KiB
Markdown
888 lines
19 KiB
Markdown
# 用户管理API
|
||
|
||
## 概述
|
||
|
||
用户管理模块提供系统用户的增删改查功能,包括用户信息管理、状态控制、密码管理、角色分配等核心功能。
|
||
|
||
## 权限说明
|
||
|
||
用户管理接口需要相应的权限才能访问:
|
||
|
||
| 操作 | 权限码 | 说明 |
|
||
|------|--------|------|
|
||
| 查询用户列表 | `system:user:list` | 查看用户列表权限 |
|
||
| 新增用户 | `system:user:add` | 新增用户权限 |
|
||
| 修改用户 | `system:user:edit` | 修改用户信息权限 |
|
||
| 删除用户 | `system:user:remove` | 删除用户权限 |
|
||
| 重置密码 | `system:user:resetPwd` | 重置用户密码权限 |
|
||
| 修改状态 | `system:user:status` | 修改用户状态权限 |
|
||
| 分配角色 | `system:user:role` | 分配用户角色权限 |
|
||
| 导入用户 | `system:user:import` | 导入用户数据权限 |
|
||
| 导出用户 | `system:user:export` | 导出用户数据权限 |
|
||
|
||
## 接口列表
|
||
|
||
### 1. 分页查询用户列表
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/listPage`
|
||
|
||
**接口描述**: 分页查询系统用户列表
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:list`
|
||
|
||
**请求头**:
|
||
```
|
||
Authorization: your-token-value
|
||
```
|
||
|
||
**请求参数**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|
||
|--------|------|------|------|------|
|
||
| pageNo | Integer | 否 | 页码 | 1 |
|
||
| pageSize | Integer | 否 | 每页大小 | 10 |
|
||
| loginName | String | 否 | 登录账号 | admin |
|
||
| userName | String | 否 | 用户姓名 | 管理员 |
|
||
| userType | String | 否 | 用户类型 | 1 |
|
||
| phone | String | 否 | 手机号码 | 13800138000 |
|
||
| sex | String | 否 | 用户性别 | 1 |
|
||
| userStatus | String | 否 | 用户状态 | 0 |
|
||
| beginTime | String | 否 | 开始时间 | 2024-01-01 |
|
||
| endTime | String | 否 | 结束时间 | 2024-12-31 |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": {
|
||
"records": [
|
||
{
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
"userType": "1",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"avatar": "/upload/avatar/admin.jpg",
|
||
"userStatus": "0",
|
||
"loginIp": "127.0.0.1",
|
||
"loginTime": "2024-01-01 10:00:00",
|
||
"pwdUpdateTime": "2024-01-01 10:00:00",
|
||
"remark": "系统管理员",
|
||
"createBy": "admin",
|
||
"createTime": "2024-01-01 10:00:00",
|
||
"updateBy": "admin",
|
||
"updateTime": "2024-01-01 10:00:00",
|
||
"roleIds": [1, 2]
|
||
}
|
||
],
|
||
"total": 1,
|
||
"size": 10,
|
||
"current": 1,
|
||
"pages": 1
|
||
},
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X GET \
|
||
"http://localhost:18099/coder/sysLoginUser/listPage?pageNo=1&pageSize=10&loginName=admin" \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 2. 查询所有用户
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/list`
|
||
|
||
**接口描述**: 查询所有系统用户(不分页)
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:list`
|
||
|
||
**请求参数**: 同分页查询(除pageNo、pageSize外)
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": [
|
||
{
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
// 其他字段...
|
||
}
|
||
],
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
### 3. 根据ID查询用户
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/getById/{id}`
|
||
|
||
**接口描述**: 根据用户ID查询用户详细信息
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:list`
|
||
|
||
**路径参数**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| id | Long | 是 | 用户ID |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": {
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
"userType": "1",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"avatar": "/upload/avatar/admin.jpg",
|
||
"userStatus": "0",
|
||
"loginIp": "127.0.0.1",
|
||
"loginTime": "2024-01-01 10:00:00",
|
||
"pwdUpdateTime": "2024-01-01 10:00:00",
|
||
"remark": "系统管理员",
|
||
"createBy": "admin",
|
||
"createTime": "2024-01-01 10:00:00",
|
||
"updateBy": "admin",
|
||
"updateTime": "2024-01-01 10:00:00",
|
||
"roleIds": [1, 2]
|
||
},
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X GET \
|
||
http://localhost:18099/coder/sysLoginUser/getById/1 \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 4. 新增用户
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/add`
|
||
|
||
**接口描述**: 新增系统用户
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:add`
|
||
|
||
**请求参数**:
|
||
|
||
```json
|
||
{
|
||
"loginName": "newuser",
|
||
"userName": "新用户",
|
||
"password": "123456",
|
||
"userType": "1",
|
||
"email": "newuser@example.com",
|
||
"phone": "13800138001",
|
||
"sex": "1",
|
||
"userStatus": "0",
|
||
"remark": "新用户备注",
|
||
"roleIds": [2]
|
||
}
|
||
```
|
||
|
||
**请求参数说明**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 | 校验规则 |
|
||
|--------|------|------|------|----------|
|
||
| loginName | String | 是 | 登录账号 | 3-16位字母数字 |
|
||
| userName | String | 是 | 用户姓名 | 不能为空 |
|
||
| password | String | 是 | 登录密码 | 不能为空 |
|
||
| userType | String | 是 | 用户类型 | 1-系统用户 2-注册用户 |
|
||
| email | String | 否 | 邮箱地址 | 邮箱格式验证 |
|
||
| phone | String | 否 | 手机号码 | 手机号格式验证 |
|
||
| sex | String | 否 | 用户性别 | 1-男 2-女 3-未知 |
|
||
| userStatus | String | 是 | 用户状态 | 0-启用 1-停用 |
|
||
| remark | String | 否 | 备注信息 | 最长200字符 |
|
||
| roleIds | Long[] | 否 | 角色ID数组 | 有效的角色ID |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "新增成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/add \
|
||
-H "Content-Type: application/json" \
|
||
-H "Authorization: your-token-value" \
|
||
-d '{
|
||
"loginName": "newuser",
|
||
"userName": "新用户",
|
||
"password": "123456",
|
||
"userType": "1",
|
||
"email": "newuser@example.com",
|
||
"phone": "13800138001",
|
||
"sex": "1",
|
||
"userStatus": "0",
|
||
"remark": "新用户备注",
|
||
"roleIds": [2]
|
||
}'
|
||
```
|
||
|
||
---
|
||
|
||
### 5. 修改用户信息
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/update`
|
||
|
||
**接口描述**: 修改系统用户信息
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:edit`
|
||
|
||
**请求参数**:
|
||
|
||
```json
|
||
{
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
"userType": "1",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"userStatus": "0",
|
||
"remark": "系统管理员",
|
||
"roleIds": [1, 2]
|
||
}
|
||
```
|
||
|
||
**请求参数说明**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 | 校验规则 |
|
||
|--------|------|------|------|----------|
|
||
| userId | Long | 是 | 用户ID | 必须是有效的用户ID |
|
||
| loginName | String | 是 | 登录账号 | 3-16位字母数字 |
|
||
| userName | String | 是 | 用户姓名 | 不能为空 |
|
||
| userType | String | 是 | 用户类型 | 1-系统用户 2-注册用户 |
|
||
| email | String | 否 | 邮箱地址 | 邮箱格式验证 |
|
||
| phone | String | 否 | 手机号码 | 手机号格式验证 |
|
||
| sex | String | 否 | 用户性别 | 1-男 2-女 3-未知 |
|
||
| userStatus | String | 是 | 用户状态 | 0-启用 1-停用 |
|
||
| remark | String | 否 | 备注信息 | 最长200字符 |
|
||
| roleIds | Long[] | 否 | 角色ID数组 | 有效的角色ID |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "修改成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/update \
|
||
-H "Content-Type: application/json" \
|
||
-H "Authorization: your-token-value" \
|
||
-d '{
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
"userType": "1",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"userStatus": "0",
|
||
"remark": "系统管理员",
|
||
"roleIds": [1, 2]
|
||
}'
|
||
```
|
||
|
||
---
|
||
|
||
### 6. 删除用户
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/deleteById/{id}`
|
||
|
||
**接口描述**: 根据ID删除用户
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:remove`
|
||
|
||
**路径参数**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| id | Long | 是 | 用户ID |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "删除成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/deleteById/1 \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 7. 批量删除用户
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/batchDelete`
|
||
|
||
**接口描述**: 批量删除用户
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:remove`
|
||
|
||
**请求参数**:
|
||
|
||
```json
|
||
{
|
||
"ids": [1, 2, 3]
|
||
}
|
||
```
|
||
|
||
**请求参数说明**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| ids | Long[] | 是 | 用户ID数组 |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "删除成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/batchDelete \
|
||
-H "Content-Type: application/json" \
|
||
-H "Authorization: your-token-value" \
|
||
-d '{
|
||
"ids": [1, 2, 3]
|
||
}'
|
||
```
|
||
|
||
---
|
||
|
||
### 8. 修改用户状态
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/updateStatus/{userId}/{userStatus}`
|
||
|
||
**接口描述**: 修改用户状态(启用/停用)
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:status`
|
||
|
||
**路径参数**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| userId | Long | 是 | 用户ID |
|
||
| userStatus | String | 是 | 用户状态(0-启用 1-停用) |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "修改成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/updateStatus/1/0 \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 9. 获取登录用户信息
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/getLoginUserInformation`
|
||
|
||
**接口描述**: 获取当前登录用户的详细信息
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: 无(已登录用户可访问)
|
||
|
||
**请求参数**: 无
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": {
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
"userType": "1",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"avatar": "/upload/avatar/admin.jpg",
|
||
"userStatus": "0",
|
||
"loginIp": "127.0.0.1",
|
||
"loginTime": "2024-01-01 10:00:00",
|
||
"pwdUpdateTime": "2024-01-01 10:00:00",
|
||
"remark": "系统管理员",
|
||
"createBy": "admin",
|
||
"createTime": "2024-01-01 10:00:00",
|
||
"updateBy": "admin",
|
||
"updateTime": "2024-01-01 10:00:00",
|
||
"roleIds": [1, 2],
|
||
"roles": [
|
||
{
|
||
"roleId": 1,
|
||
"roleName": "超级管理员",
|
||
"roleCode": "admin"
|
||
}
|
||
],
|
||
"permissions": [
|
||
"*:*:*"
|
||
]
|
||
},
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X GET \
|
||
http://localhost:18099/coder/sysLoginUser/getLoginUserInformation \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 10. 获取个人资料
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/getPersonalData`
|
||
|
||
**接口描述**: 获取当前用户的个人资料
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: 无(已登录用户可访问)
|
||
|
||
**请求参数**: 无
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": {
|
||
"userId": 1,
|
||
"loginName": "admin",
|
||
"userName": "管理员",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"avatar": "/upload/avatar/admin.jpg",
|
||
"remark": "系统管理员"
|
||
},
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X GET \
|
||
http://localhost:18099/coder/sysLoginUser/getPersonalData \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 11. 修改个人资料
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/updateBasicData`
|
||
|
||
**接口描述**: 修改当前用户的个人资料
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: 无(已登录用户可访问)
|
||
|
||
**请求参数**:
|
||
|
||
```json
|
||
{
|
||
"userName": "管理员",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"avatar": "/upload/avatar/admin.jpg",
|
||
"remark": "系统管理员"
|
||
}
|
||
```
|
||
|
||
**请求参数说明**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 | 校验规则 |
|
||
|--------|------|------|------|----------|
|
||
| userName | String | 是 | 用户姓名 | 不能为空 |
|
||
| email | String | 否 | 邮箱地址 | 邮箱格式验证 |
|
||
| phone | String | 否 | 手机号码 | 手机号格式验证 |
|
||
| sex | String | 否 | 用户性别 | 1-男 2-女 3-未知 |
|
||
| avatar | String | 否 | 头像地址 | 有效的文件路径 |
|
||
| remark | String | 否 | 备注信息 | 最长200字符 |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "修改成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/updateBasicData \
|
||
-H "Content-Type: application/json" \
|
||
-H "Authorization: your-token-value" \
|
||
-d '{
|
||
"userName": "管理员",
|
||
"email": "admin@example.com",
|
||
"phone": "13800138000",
|
||
"sex": "1",
|
||
"avatar": "/upload/avatar/admin.jpg",
|
||
"remark": "系统管理员"
|
||
}'
|
||
```
|
||
|
||
---
|
||
|
||
### 12. 修改登录密码
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/updateUserPwd`
|
||
|
||
**接口描述**: 修改当前用户的登录密码
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: 无(已登录用户可访问)
|
||
|
||
**请求参数**:
|
||
|
||
```json
|
||
{
|
||
"oldPassword": "123456",
|
||
"newPassword": "654321",
|
||
"confirmPassword": "654321"
|
||
}
|
||
```
|
||
|
||
**请求参数说明**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 | 校验规则 |
|
||
|--------|------|------|------|----------|
|
||
| oldPassword | String | 是 | 原密码 | 不能为空 |
|
||
| newPassword | String | 是 | 新密码 | 不能为空 |
|
||
| confirmPassword | String | 是 | 确认密码 | 必须与新密码一致 |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "修改成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/updateUserPwd \
|
||
-H "Content-Type: application/json" \
|
||
-H "Authorization: your-token-value" \
|
||
-d '{
|
||
"oldPassword": "123456",
|
||
"newPassword": "654321",
|
||
"confirmPassword": "654321"
|
||
}'
|
||
```
|
||
|
||
---
|
||
|
||
### 13. 重置用户密码
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/resetPwd/{id}/{password}`
|
||
|
||
**接口描述**: 重置指定用户的密码
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:resetPwd`
|
||
|
||
**路径参数**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| id | Long | 是 | 用户ID |
|
||
| password | String | 是 | 新密码 |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": "重置成功",
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/resetPwd/1/123456 \
|
||
-H "Authorization: your-token-value"
|
||
```
|
||
|
||
---
|
||
|
||
### 14. 下载用户导入模板
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/downloadExcelTemplate`
|
||
|
||
**接口描述**: 下载用户批量导入的Excel模板
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:import`
|
||
|
||
**请求参数**: 无
|
||
|
||
**响应**: Excel文件下载
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X GET \
|
||
http://localhost:18099/coder/sysLoginUser/downloadExcelTemplate \
|
||
-H "Authorization: your-token-value" \
|
||
-o user_template.xlsx
|
||
```
|
||
|
||
---
|
||
|
||
### 15. 导出用户数据
|
||
|
||
**接口地址**: `GET /coder/sysLoginUser/exportExcelData`
|
||
|
||
**接口描述**: 导出用户数据到Excel
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:export`
|
||
|
||
**请求参数**: 同查询参数
|
||
|
||
**响应**: Excel文件下载
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X GET \
|
||
"http://localhost:18099/coder/sysLoginUser/exportExcelData?userStatus=0" \
|
||
-H "Authorization: your-token-value" \
|
||
-o users.xlsx
|
||
```
|
||
|
||
---
|
||
|
||
### 16. 导入用户数据
|
||
|
||
**接口地址**: `POST /coder/sysLoginUser/importExcelData`
|
||
|
||
**接口描述**: 从Excel文件导入用户数据
|
||
|
||
**是否需要认证**: 是
|
||
|
||
**权限要求**: `system:user:import`
|
||
|
||
**请求参数**: 文件上传
|
||
|
||
**Content-Type**: `multipart/form-data`
|
||
|
||
**请求参数**:
|
||
|
||
| 参数名 | 类型 | 必填 | 说明 |
|
||
|--------|------|------|------|
|
||
| file | File | 是 | Excel文件 |
|
||
| updateSupport | Boolean | 否 | 是否更新已存在的用户 |
|
||
|
||
**响应示例**:
|
||
|
||
```json
|
||
{
|
||
"status": 200,
|
||
"msg": "SUCCESS",
|
||
"data": {
|
||
"total": 100,
|
||
"success": 95,
|
||
"failed": 5,
|
||
"message": "导入成功95条,失败5条"
|
||
},
|
||
"traceId": "trace-123456"
|
||
}
|
||
```
|
||
|
||
**调用示例**:
|
||
|
||
```bash
|
||
curl -X POST \
|
||
http://localhost:18099/coder/sysLoginUser/importExcelData \
|
||
-H "Authorization: your-token-value" \
|
||
-F "file=@users.xlsx" \
|
||
-F "updateSupport=true"
|
||
```
|
||
|
||
---
|
||
|
||
## 数据字典
|
||
|
||
### 用户类型 (userType)
|
||
|
||
| 值 | 说明 |
|
||
|----|------|
|
||
| 1 | 系统用户 |
|
||
| 2 | 注册用户 |
|
||
| 3 | 微信用户 |
|
||
|
||
### 用户性别 (sex)
|
||
|
||
| 值 | 说明 |
|
||
|----|------|
|
||
| 1 | 男 |
|
||
| 2 | 女 |
|
||
| 3 | 未知 |
|
||
|
||
### 用户状态 (userStatus)
|
||
|
||
| 值 | 说明 |
|
||
|----|------|
|
||
| 0 | 启用 |
|
||
| 1 | 停用 |
|
||
|
||
---
|
||
|
||
## 错误码说明
|
||
|
||
| 错误码 | 错误信息 | 说明 |
|
||
|--------|----------|------|
|
||
| 400 | 账号长度为 3-16 位 | 登录账号长度不符合要求 |
|
||
| 400 | 账号格式为数字以及字母 | 登录账号格式不正确 |
|
||
| 400 | 登录账号不能为空 | 登录账号为空 |
|
||
| 400 | 用户真实姓名不能为空 | 用户姓名为空 |
|
||
| 400 | 用户不存在 | 用户ID不存在 |
|
||
| 400 | 账号已存在 | 登录账号已被使用 |
|
||
| 400 | 手机号已存在 | 手机号已被使用 |
|
||
| 400 | 邮箱已存在 | 邮箱已被使用 |
|
||
| 400 | 不能删除当前用户 | 不能删除自己的账号 |
|
||
| 400 | 不能停用当前用户 | 不能停用自己的账号 |
|
||
| 400 | 原密码错误 | 修改密码时原密码不正确 |
|
||
| 400 | 新密码不能与原密码相同 | 新密码与原密码一致 |
|
||
| 400 | 两次输入的密码不一致 | 确认密码与新密码不一致 |
|
||
| 401 | 当前会话未登录 | 未登录或Token无效 |
|
||
| 403 | 权限不足 | 没有相应的操作权限 |
|
||
| 500 | 系统异常 | 服务器内部错误 |
|
||
|
||
---
|
||
|
||
## 注意事项
|
||
|
||
1. **权限验证**: 所有用户管理操作都需要相应的权限
|
||
2. **数据校验**: 新增和修改用户时会进行数据格式校验
|
||
3. **唯一性约束**: 登录账号、手机号、邮箱必须唯一
|
||
4. **密码安全**: 密码使用盐值加密存储
|
||
5. **操作日志**: 所有用户操作都会记录日志
|
||
6. **批量操作**: 批量删除时会跳过超级管理员账号
|
||
7. **Excel导入**: 支持Excel模板导入用户数据
|
||
8. **角色关联**: 用户删除时会自动删除角色关联关系
|
||
9. **会话管理**: 用户状态变更时会影响其登录会话
|
||
10. **数据完整性**: 删除用户前会检查关联数据 |