Files
ccdi/openspec/changes/add-employee-info-ui/proposal.md

120 lines
3.6 KiB
Markdown
Raw Permalink Normal View History

# 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/)