# 信息维护年收入字段后端实施计划 ## 目标 - 员工信息维护新增 `annual_income` - 员工亲属关系维护新增 `annual_income` - 覆盖数据库、实体、DTO/VO、Mapper、导入导出、失败记录、服务层校验 ## 实施内容 1. 数据库变更 - 在 `ccdi_base_staff` 新增 `annual_income DECIMAL(15,2) NULL` - 在 `ccdi_staff_fmy_relation` 新增 `annual_income DECIMAL(15,2) NULL` - 增量脚本落库到 `sql/migration/2026-03-17-add-annual-income-to-info-maintenance.sql` 2. 员工信息链路 - 扩展 `CcdiBaseStaff`、`CcdiBaseStaffAddDTO`、`CcdiBaseStaffEditDTO`、`CcdiBaseStaffVO` - 扩展 `CcdiBaseStaffExcel` 与 `ImportFailureVO` - 更新 `CcdiBaseStaffMapper.xml` 的分页查询、批量插入、批量更新 SQL - 在 `CcdiBaseStaffServiceImpl` 与 `CcdiBaseStaffImportServiceImpl` 增加非负且最多两位小数校验 3. 员工亲属关系链路 - 扩展 `CcdiStaffFmyRelation`、`CcdiStaffFmyRelationAddDTO`、`CcdiStaffFmyRelationEditDTO`、`CcdiStaffFmyRelationVO` - 扩展 `CcdiStaffFmyRelationExcel` 与 `StaffFmyRelationImportFailureVO` - 更新 `CcdiStaffFmyRelationMapper.xml` 的列表、详情、导出、批量插入 SQL - 在 `CcdiStaffFmyRelationServiceImpl` 与 `CcdiStaffFmyRelationImportServiceImpl` 增加非负且最多两位小数校验 ## 测试 - `CcdiBaseStaffServiceImplTest` - `CcdiStaffFmyRelationServiceImplTest` - `CcdiBaseStaffImportServiceImplTest` - `CcdiStaffFmyRelationImportServiceImplTest` - `CcdiBaseStaffMapperTest` - `CcdiStaffFmyRelationMapperTest` ## 验收标准 - 列表、详情、导出和导入都能透传 `annualIncome` - 服务层可拦截负数与超过两位小数 - 失败记录可返回原始年收入值