165 lines
3.8 KiB
Markdown
165 lines
3.8 KiB
Markdown
|
# 用户信息相关 API 接口对接说明
|
|||
|
|
|||
|
## 概述
|
|||
|
|
|||
|
已完成对接新的用户信息相关 API 接口,新接口路径为 `/user`,与原有的 `/system/user` 接口并行存在。
|
|||
|
|
|||
|
## 新增文件
|
|||
|
|
|||
|
### 1. 类型定义 (`src/apis/system/type.ts`)
|
|||
|
|
|||
|
添加了以下新的类型定义:
|
|||
|
|
|||
|
- `UserNewResp` - 新用户信息响应类型
|
|||
|
- `UserNewAddReq` - 新用户信息请求类型
|
|||
|
- `UserNewUpdateReq` - 新用户信息修改请求类型
|
|||
|
- `UserBindRoleReq` - 用户绑定角色请求类型
|
|||
|
- `UserNewQuery` - 新用户查询参数
|
|||
|
- `UserNewPageQuery` - 新用户分页查询参数
|
|||
|
|
|||
|
### 2. API 接口 (`src/apis/system/user-new.ts`)
|
|||
|
|
|||
|
实现了以下 API 接口:
|
|||
|
|
|||
|
#### 新增用户信息
|
|||
|
```typescript
|
|||
|
addUserNew(data: UserNewAddReq): Promise<ApiRes<UserNewResp>>
|
|||
|
```
|
|||
|
- 方法:POST
|
|||
|
- 路径:`/user`
|
|||
|
|
|||
|
#### 绑定角色
|
|||
|
```typescript
|
|||
|
bindUserRole(data: UserBindRoleReq): Promise<ApiRes<any>>
|
|||
|
```
|
|||
|
- 方法:PUT
|
|||
|
- 路径:`/user/bind-role`
|
|||
|
|
|||
|
#### 根据用户信息Id获取详细信息
|
|||
|
```typescript
|
|||
|
getUserDetailNew(userId: string): Promise<ApiRes<UserNewResp>>
|
|||
|
```
|
|||
|
- 方法:GET
|
|||
|
- 路径:`/user/detail/{userId}`
|
|||
|
|
|||
|
#### 查询用户信息列表
|
|||
|
```typescript
|
|||
|
listUserNew(query: UserNewQuery): Promise<ApiRes<UserNewResp[]>>
|
|||
|
```
|
|||
|
- 方法:GET
|
|||
|
- 路径:`/user/list`
|
|||
|
|
|||
|
#### 分页查询用户信息列表
|
|||
|
```typescript
|
|||
|
pageUserNew(query: UserNewPageQuery): Promise<ApiRes<PageRes<UserNewResp[]>>>
|
|||
|
```
|
|||
|
- 方法:GET
|
|||
|
- 路径:`/user/page`
|
|||
|
|
|||
|
#### 修改用户信息
|
|||
|
```typescript
|
|||
|
updateUserNew(userId: string, data: UserNewUpdateReq): Promise<ApiRes<any>>
|
|||
|
```
|
|||
|
- 方法:PUT
|
|||
|
- 路径:`/user/{userId}`
|
|||
|
|
|||
|
#### 删除用户信息
|
|||
|
```typescript
|
|||
|
deleteUserNew(userId: string): Promise<ApiRes<any>>
|
|||
|
```
|
|||
|
- 方法:DELETE
|
|||
|
- 路径:`/user/{userId}`
|
|||
|
|
|||
|
## 使用方式
|
|||
|
|
|||
|
### 1. 导入接口
|
|||
|
|
|||
|
```typescript
|
|||
|
import {
|
|||
|
addUserNew,
|
|||
|
bindUserRole,
|
|||
|
getUserDetailNew,
|
|||
|
listUserNew,
|
|||
|
pageUserNew,
|
|||
|
updateUserNew,
|
|||
|
deleteUserNew
|
|||
|
} from '@/apis/system'
|
|||
|
```
|
|||
|
|
|||
|
### 2. 导入类型
|
|||
|
|
|||
|
```typescript
|
|||
|
import type {
|
|||
|
UserNewAddReq,
|
|||
|
UserBindRoleReq,
|
|||
|
UserNewQuery,
|
|||
|
UserNewPageQuery,
|
|||
|
UserNewUpdateReq
|
|||
|
} from '@/apis/system'
|
|||
|
```
|
|||
|
|
|||
|
### 3. 使用示例
|
|||
|
|
|||
|
```typescript
|
|||
|
// 新增用户
|
|||
|
const userData: UserNewAddReq = {
|
|||
|
account: 'testuser',
|
|||
|
name: '测试用户',
|
|||
|
email: 'test@example.com',
|
|||
|
mobile: '13800138000',
|
|||
|
gender: '1',
|
|||
|
deptId: '1',
|
|||
|
userType: 'EMPLOYEE',
|
|||
|
userStatus: 'ENABLED',
|
|||
|
status: 1
|
|||
|
}
|
|||
|
const result = await addUserNew(userData)
|
|||
|
|
|||
|
// 绑定角色
|
|||
|
await bindUserRole({
|
|||
|
userId: 'user123',
|
|||
|
roleIds: ['role1', 'role2']
|
|||
|
})
|
|||
|
|
|||
|
// 查询用户列表
|
|||
|
const userList = await listUserNew({ account: 'test' })
|
|||
|
|
|||
|
// 分页查询
|
|||
|
const userPage = await pageUserNew({
|
|||
|
page: 1,
|
|||
|
size: 10,
|
|||
|
account: 'test'
|
|||
|
})
|
|||
|
```
|
|||
|
|
|||
|
## 字段说明
|
|||
|
|
|||
|
### 用户信息字段
|
|||
|
|
|||
|
| 字段名 | 类型 | 说明 | 是否必填 |
|
|||
|
|--------|------|------|----------|
|
|||
|
| account | string | 账号 | 是 |
|
|||
|
| avatar | string | 头像地址 | 否 |
|
|||
|
| birthdate | string | 出生日期 | 否 |
|
|||
|
| deptId | string | 所属部门ID | 否 |
|
|||
|
| education | string | 学历 | 否 |
|
|||
|
| email | string | 邮箱 | 否 |
|
|||
|
| gender | string | 性别 | 否 |
|
|||
|
| hiredate | string | 入职日期 | 否 |
|
|||
|
| identityCard | string | 身份证 | 否 |
|
|||
|
| majorField | string | 专业 | 否 |
|
|||
|
| mobile | string | 手机号码 | 否 |
|
|||
|
| name | string | 姓名 | 否 |
|
|||
|
| postIds | string[] | 岗位 | 否 |
|
|||
|
| roleIds | string[] | 角色 | 否 |
|
|||
|
| status | number | 0正常1禁用 | 否 |
|
|||
|
| userStatus | string | 在职状态 | 否 |
|
|||
|
| userType | string | 员工性质 | 否 |
|
|||
|
| workField | string | 工作方向 | 否 |
|
|||
|
|
|||
|
## 注意事项
|
|||
|
|
|||
|
1. 新接口与原有 `/system/user` 接口并行存在,不会影响现有功能
|
|||
|
2. 所有接口都已在 `src/apis/system/index.ts` 中导出,可直接使用
|
|||
|
3. 请根据实际业务需求选择合适的接口进行调用
|
|||
|
4. 建议在使用前先通过 API 文档确认字段格式和枚举值
|