# Proposal: 添加员工信息管理前端页面

## Change ID
`add-employee-info-ui`

## Summary
为员工信息管理模块开发前端页面，实现员工及其亲属信息的可视化管理。包括员工列表查询、新增/编辑员工（支持亲属管理）、详情查看、Excel 导入等功能。页面将放置在"信息维护"菜单下。

## Motivation
员工信息管理的后端 API 已在 `add-employee-info` 变更中完成开发。现在需要开发前端页面以提供用户交互界面。

用户需要：
1. 可视化查看和管理员工信息列表
2. 创建员工时同时维护亲属信息
3. 查看员工详情时展示所有亲属
4. 支持批量导入员工数据
5. 在"信息维护"菜单下访问此功能

## Scope
本提案实现以下前端功能：

### 包含的功能
- **员工列表页面**
  - 搜索筛选区（姓名、柜员号、所属部门、身份证号、状态）
  - 员工列表表格（分页显示）
  - 操作按钮（新增、导入）
  - 部门树选择器

- **新增员工弹窗**
  - 员工基本信息表单
  - 所属部门选择（关联 sys_dept 表）
  - 亲属列表子表单（支持动态增删）
  - 表单验证

- **编辑员工弹窗**
  - 员工基本信息表单
  - 所属部门选择
  - 亲属列表子表单（支持动态增删）
  - 表单验证

- **员工详情弹窗**
  - 员工基本信息展示（只读）
  - 显示部门名称
  - 亲属列表展示（只读）

- **导入功能**
  - 导入弹窗
  - Excel 文件上传
  - 导入结果反馈
  - 模板下载

### 明确排除
- 菜单数据的数据库插入（需要前端开发完成后手动配置）
- 员工信息与其他模块的联动（属于后续功能）

## Proposed Design
详见 [design.md](./design.md)

## Alternatives Considered

### 选项1：参考中介库管理页面实现
**优点**：
- 保持项目内 UI/UX 一致性
- 复用已有的代码模式
- 开发效率高

**缺点**：
- 需要额外实现亲属子表单功能

**决定**：采用。参考 `dpcIntermediary` 页面的实现模式，在此基础上增加亲属子表单功能。

### 选项2：使用若依代码生成器
**优点**：
- 快速生成基础 CRUD 页面

**缺点**：
- 生成代码需要大量调整以支持亲属子表单
- 与现有前端风格可能不一致

**决定**：不采用。手动开发可以更好地实现亲属子表单功能，保持与中介库页面一致的风格。

## Impact

### 前端影响
- 新增视图：`ruoyi-ui/src/views/dpcEmployee/`
  - `index.vue` - 员工列表页面
- 新增 API：`ruoyi-ui/src/api/dpcEmployee.js`

### 后端影响
无，后端 API 已在 `add-employee-info` 中完成。

### 数据库影响
- 需要在 `sys_menu` 表中插入菜单数据（开发完成后手动配置）

## Dependencies
- 依赖 `add-employee-info` 变更完成后端 API
- 依赖若依框架的前端组件（Element UI）

## Related Changes
- `add-employee-info` - 提供后端 API 接口

## Open Questions
无

## Success Criteria
- [ ] 用户可以在"信息维护"菜单下访问员工信息管理页面
- [ ] 用户可以查看员工列表并支持分页
- [ ] 用户可以按多种条件搜索员工
- [ ] 用户可以新增员工并添加亲属
- [ ] 用户可以编辑员工信息和亲属
- [ ] 用户可以查看员工详情和亲属列表
- [ ] 用户可以删除员工
- [ ] 用户可以下载 Excel 导入模板
- [ ] 用户可以导入员工数据

## References
- [员工信息管理 API 文档](../../../doc/员工信息管理API文档.md)
- [模块设计文档 - 信息维护模块](../../../doc/modules/03-信息维护模块.md)
- [add-employee-info 变更](../add-employee-info/)
