你说得对!之前只详细写了分页查询员工和新增员工,而编辑员工、删除员工、启用/禁用员工等接口的详情确实没有展开。
现在把员工管理模块和部门管理模块的剩余接口详情补全:
1 员工管理模块 —— 剩余接口详情
1.1 编辑员工
接口定义:
PUT /api/v1/system/users/{id}
Authorization: Bearer <token>
Content-Type: application/json路径参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | long | 是 | 员工 ID |
请求参数:
{
"realName": "张无忌",
"email": "zhangwuji@company.com",
"phone": "13900000088",
"departmentId": 4,
"status": 1
}参数说明:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| realName | string | 否 | 真实姓名 |
| string | 否 | 邮箱 | |
| phone | string | 否 | 手机号 |
| departmentId | long | 否 | 部门 ID |
| status | int | 否 | 账号状态(0 禁用 1 启用) |
注意:账号(username)不可修改,如需修改账号需走专门接口。
响应:
{
"code": 200,
"msg": "编辑成功",
"data": null,
"timestamp": 1721800000000
}1.2 删除员工(逻辑删除)
接口定义:
DELETE /api/v1/system/users/{id}
Authorization: Bearer <token>路径参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | long | 是 | 员工 ID |
响应:
{
"code": 200,
"msg": "删除成功",
"data": null,
"timestamp": 1721800000000
}错误响应(存在关联资产):
{
"code": 400,
"msg": "该员工当前领用着 3 项资产,请先归还或转移资产后再删除",
"data": {
"assetCount": 3
},
"timestamp": 1721800000000
}1.3 启用/禁用员工
接口定义:
PUT /api/v1/system/users/{id}/status
Authorization: Bearer <token>
Content-Type: application/json路径参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | long | 是 | 员工 ID |
请求参数:
{
"status": 0
}参数说明:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| status | int | 是 | 0- 禁用,1- 启用 |
响应:
{
"code": 200,
"msg": "状态更新成功",
"data": {
"status": 0,
"statusLabel": "已禁用"
},
"timestamp": 1721800000000
}1.4 查询全部角色列表(下拉选择用)
接口定义:
GET /api/v1/system/users/roles/list
Authorization: Bearer <token>响应:
{
"code": 200,
"msg": "操作成功",
"data": [
{
"id": 1,
"roleName": "管理员",
"roleCode": "ADMIN",
"isEnabled": 1
},
{
"id": 2,
"roleName": "部门经理",
"roleCode": "MANAGER",
"isEnabled": 1
},
{
"id": 3,
"roleName": "普通员工",
"roleCode": "USER",
"isEnabled": 1
}
],
"timestamp": 1721800000000
}2 部门管理模块 —— 剩余接口详情
2.1 新增部门
接口定义:
POST /api/v1/system/depts
Authorization: Bearer <token>
Content-Type: application/json请求参数:
{
"parentId": 1,
"deptName": "研发三部",
"leaderId": 2,
"sortNum": 3
}参数说明:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| parentId | long | 否 | 上级部门 ID(null 表示一级部门) |
| deptName | string | 是 | 部门名称(同级下唯一) |
| leaderId | long | 否 | 部门经理用户 ID |
| sortNum | int | 否 | 排序号(默认 0) |
响应:
{
"code": 200,
"msg": "新增成功",
"data": {
"id": 6
},
"timestamp": 1721800000000
}错误响应(同名部门):
{
"code": 409,
"msg": "同级下已存在同名部门:研发三部",
"data": null,
"timestamp": 1721800000000
}2.2 编辑部门
接口定义:
PUT /api/v1/system/depts/{id}
Authorization: Bearer <token>
Content-Type: application/json路径参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | long | 是 | 部门 ID |
请求参数:
{
"deptName": "研发三部(杭州)",
"leaderId": 8,
"sortNum": 4,
"isEnabled": 1
}参数说明:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| deptName | string | 否 | 部门名称 |
| leaderId | long | 否 | 部门经理用户 ID |
| sortNum | int | 否 | 排序号 |
| isEnabled | int | 否 | 是否启用(0 禁用 1 启用) |
注意:
parentId不可修改(如需移动部门,建议先删除再新建,或单独提供移动接口)
响应:
{
"code": 200,
"msg": "编辑成功",
"data": null,
"timestamp": 1721800000000
}2.3 删除部门
接口定义:
DELETE /api/v1/system/depts/{id}
Authorization: Bearer <token>路径参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | long | 是 | 部门 ID |
响应:
{
"code": 200,
"msg": "删除成功",
"data": null,
"timestamp": 1721800000000
}错误响应(存在子部门):
{
"code": 400,
"msg": "该部门下存在子部门,请先删除子部门",
"data": {
"childCount": 3
},
"timestamp": 1721800000000
}错误响应(存在用户):
{
"code": 400,
"msg": "该部门下存在员工,请先将员工转移到其他部门",
"data": {
"userCount": 5
},
"timestamp": 1721800000000
}2.4 查询部门下拉列表
接口定义:
GET /api/v1/system/depts/list
Authorization: Bearer <token>响应:
{
"code": 200,
"msg": "操作成功",
"data": [
{
"id": 1,
"deptName": "研发部",
"parentId": null,
"leaderId": null,
"sortNum": 1
},
{
"id": 2,
"deptName": "销售部",
"parentId": null,
"leaderId": 5,
"sortNum": 2
},
{
"id": 3,
"deptName": "人事部",
"parentId": null,
"leaderId": 6,
"sortNum": 3
},
{
"id": 4,
"deptName": "研发一部",
"parentId": 1,
"leaderId": 3,
"sortNum": 1
},
{
"id": 5,
"deptName": "研发二部",
"parentId": 1,
"leaderId": 7,
"sortNum": 2
}
],
"timestamp": 1721800000000
}与部门树接口的区别:
/depts/tree返回树形结构(含 children),用于前端树组件;/depts/list返回扁平列表,用于下拉选择框。
3 接口清单汇总(已调整)
| 模块 | 接口名称 | 方法 | URL | 权限要求 | 状态 |
|---|---|---|---|---|---|
| 员工管理 | |||||
| 1 | 分页查询员工 | GET | /system/users | user:list | ✅ 已有 |
| 2 | 查询员工详情 | GET | /system/users/{id} | user:list | ✅ 已有 |
| 3 | 新增员工 | POST | /system/users | user:add | ✅ 已有 |
| 4 | 编辑员工 | PUT | /system/users/{id} | user:edit | ✅ 本次补充 |
| 5 | 删除员工 | DELETE | /system/users/{id} | user:delete | ✅ 本次补充 |
| 6 | 启用/禁用员工 | PUT | /system/users/{id}/status | user:edit | ✅ 本次补充 |
| 7 | 分配角色 | PUT | /system/users/{id}/roles | user:assign | ✅ 已有 |
| 8 | 重置密码 | PUT | /system/users/{id}/password | user:edit | ✅ 已有 |
| 9 | 查询角色列表 | GET | /system/users/roles/list | user:list | ✅ 本次补充 |
| 部门管理 | |||||
| 10 | 查询部门树 | GET | /system/depts/tree | dept:list | ✅ 已有 |
| 11 | 新增部门 | POST | /system/depts | dept:add | ✅ 本次补充 |
| 12 | 编辑部门 | PUT | /system/depts/{id} | dept:edit | ✅ 本次补充 |
| 13 | 删除部门 | DELETE | /system/depts/{id} | dept:delete | ✅ 本次补充 |
| 14 | 查询下拉列表 | GET | /system/depts/list | dept:list | ✅ 本次补充 |
现在员工管理和部门管理的接口详情已全部补齐。如果还需要补充其他模块的遗漏接口,随时告诉我。😊