Industrial-image-management.../NEW_USER_MANAGEMENT.md

171 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 新用户管理界面
## 概述
已成功创建新的用户管理界面对接了所有新的用户API接口支持完整的用户信息管理功能。
## 文件结构
```
src/views/system/user/
├── index-new.vue # 新用户管理主页面
├── components/
│ ├── UserFormModal.vue # 用户表单弹窗(新增/编辑)
│ ├── UserDetailModal.vue # 用户详情弹窗
│ └── UserRoleModal.vue # 用户角色分配弹窗
└── dept/
└── index.vue # 部门树组件(复用原有)
```
## 功能特性
### 🏢 左侧部门树
- 展示部门层级结构
- 支持搜索部门
- 点击部门筛选该部门下的用户
### 👥 右侧用户管理
- **搜索功能**:支持按账号、姓名、手机号、在职状态、员工性质搜索
- **用户列表**:展示用户完整信息,包括新字段
- **操作功能**:查看详情、编辑、分配角色、删除
### 🆕 新字段支持
- **员工编码** (userCode)
- **在职状态** (userStatus): 在职/离职
- **员工性质** (userType): 正式员工/兼职员工/实习生/外包员工
- **入职日期** (hiredate)
- **出生日期** (birthdate)
- **学历** (education)
- **专业** (majorField)
- **工作方向** (workField)
- **身份证** (identityCard)
## API 对接
### 使用的新API接口
```typescript
import {
pageUserNew, // 分页查询用户列表
addUserNew, // 新增用户
updateUserNew, // 更新用户
deleteUserNew, // 删除用户
bindUserRole // 绑定角色
} from '@/apis/system/user-new'
```
### 数据类型
```typescript
import type {
UserNewResp, // 用户响应类型
UserNewAddReq, // 新增用户请求类型
UserNewUpdateReq, // 更新用户请求类型
UserBindRoleReq // 绑定角色请求类型
} from '@/apis/system/type'
```
## 组件功能详解
### 1. UserFormModal.vue - 用户表单弹窗
**功能**
- 新增用户
- 编辑用户信息
- 表单验证
**字段**
- 基础信息:账号、姓名、手机号、邮箱
- 个人信息:性别、员工编码、身份证
- 职业信息:在职状态、员工性质、部门
- 教育信息:学历、专业、工作方向
- 时间信息:入职日期、出生日期
### 2. UserDetailModal.vue - 用户详情弹窗
**功能**
- 查看用户完整信息
- 美观的描述列表展示
- 状态和类型的标签显示
### 3. UserRoleModal.vue - 角色分配弹窗
**功能**
- 分配/取消分配用户角色
- 多选角色支持
- 角色描述展示
## 页面布局
```
┌─────────────────────────────────────────────┐
│ 用户管理 │
├───────────────┬─────────────────────────────┤
│ │ 搜索表单 │
│ 部门树 ├─────────────────────────────┤
│ │ 操作按钮 │
│ ├─────────────────────────────┤
│ │ 用户表格 │
│ │ │
│ │ │
└───────────────┴─────────────────────────────┘
```
## 使用方法
### 1. 启用新界面
将路由配置指向新的用户管理页面:
```typescript
// router配置
{
path: '/system/user',
component: () => import('@/views/system/user/index-new.vue')
}
```
### 2. 功能操作
1. **部门筛选**:点击左侧部门树节点
2. **搜索用户**:在搜索表单中输入条件
3. **新增用户**:点击"新增用户"按钮
4. **编辑用户**:点击表格中的"编辑"按钮
5. **查看详情**:点击表格中的"详情"按钮
6. **分配角色**:点击表格中的"分配角色"按钮
7. **删除用户**:点击表格中的"删除"按钮
## 数据映射
### 新旧字段对应关系
| 新字段 | 原字段 | 说明 |
|--------|--------|------|
| userId | id | 用户ID |
| account | username | 账号 |
| name | nickname | 姓名 |
| mobile | phone | 手机号 |
| userStatus | status | 在职状态(新增) |
| userType | - | 员工性质(新增) |
| userCode | - | 员工编码(新增) |
| hiredate | - | 入职日期(新增) |
| birthdate | - | 出生日期(新增) |
| education | - | 学历(新增) |
| majorField | - | 专业(新增) |
| workField | - | 工作方向(新增) |
| identityCard | - | 身份证(新增) |
## 样式特点
- **现代化UI**使用Arco Design组件库
- **响应式布局**:适配不同屏幕尺寸
- **清晰的视觉层次**:合理的间距和颜色搭配
- **状态标识**:使用标签显示不同状态
- **操作便捷**:快捷的按钮和弹窗操作
## 注意事项
1. **兼容性**:新界面与原有接口并存,不影响原有功能
2. **权限控制**:保持与原有权限系统的兼容
3. **数据验证**:严格的表单验证确保数据质量
4. **错误处理**:友好的错误提示和异常处理
5. **性能优化**:合理的分页和懒加载
## 后续扩展
- [ ] 添加用户导入/导出功能
- [ ] 集成文件上传(头像)
- [ ] 添加用户操作日志
- [ ] 支持批量操作
- [ ] 添加高级搜索功能