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

82 lines
3.0 KiB
Markdown
Raw Normal View History

# Change: 添加员工信息维护功能
## Why
当前系统缺少员工信息管理能力,员工基础信息(姓名、柜员号、所属机构、身份证、电话、入职时间)以及员工亲属关系信息需要通过系统进行维护。这导致:
1. 员工信息分散管理,缺乏统一的数据源
2. 亲属关系信息无法与员工信息关联管理
3. 数据录入效率低,无法批量导入导出
为解决上述问题,需要添加员工信息维护功能,支持员工及其亲属信息的增删改查、批量导入导出。
## What Changes
### 新增功能
- 员工信息管理:支持员工的新增、编辑、删除、查询
- 员工信息导入导出:支持 Excel 批量导入导出员工数据
- 员工亲属管理:支持在员工信息中维护亲属关系
### 数据模型
**员工主表 (dpc_employee)**
- 员工ID (主键)
- 姓名
- 柜员号 (唯一约束)
- 所属机构号
- 身份证号 (唯一约束)
- 电话
- 入职时间
- 状态 (0=在职, 1=离职)
- 审计字段(创建者、创建时间、更新者、更新时间)
**员工亲属表 (dpc_employee_relative)**
- 亲属ID (主键)
- 员工ID (外键)
- 亲属姓名
- 亲属身份证号
- 亲属手机号
- 与员工关系
- 审计字段
### API 接口
- `POST /dpc/employee` - 新增员工
- `PUT /dpc/employee` - 编辑员工
- `DELETE /dpc/employee/{ids}` - 删除员工
- `GET /dpc/employee/list` - 查询员工列表
- `GET /dpc/employee/{id}` - 获取员工详情
- `POST /dpc/employee/export` - 导出员工信息
- `POST /dpc/employee/importTemplate` - 下载导入模板
- `POST /dpc/employee/importData` - 导入员工信息
## Impact
### 影响的规范 (Affected Specs)
- 新增规范: `employee-info` (员工信息管理)
### 影响的代码 (Affected Code)
- **新增模块**: `ruoyi-dpc` (DPC业务模块)
- `com.ruoyi.dpc.domain.DpcEmployee` - 员工实体(使用 @Data 注解)
- `com.ruoyi.dpc.domain.DpcEmployeeRelative` - 亲属实体(使用 @Data 注解)
- `com.ruoyi.dpc.domain.dto.*` - DTO类统一使用 @Data 注解)
- `com.ruoyi.dpc.domain.vo.*` - VO类统一使用 @Data 注解)
- `com.ruoyi.dpc.controller.DpcEmployeeController` - 控制器
- `com.ruoyi.dpc.service.*` - 服务层
- `com.ruoyi.dpc.mapper.*` - 数据访问层(继承 MyBatis Plus BaseMapper
- **技术实现**:
- 简单 CRUD 操作使用 MyBatis Plus BaseMapper 方法
- 复杂查询(如多表关联)使用 XML 映射文件
- **数据库**: 新增表
- `dpc_employee` - 员工信息表
- `dpc_employee_relative` - 员工亲属表
- `sys_dict_type` - 字典类型表(员工状态、亲属关系)
- **菜单系统**: (将在前端开发阶段处理)
- 本次不涉及菜单数据的创建
- 前端开发时需在 `sys_menu` 表中插入菜单及权限数据
- **前端**: (本次提案仅涉及后端接口)
- 前端页面开发时需要同步配置菜单数据
### 非破坏性变更 (Non-Breaking)
此变更为纯新增功能,不影响现有系统行为。