Files
ccdi/docs/plans/backend/2026-04-22-staff-recruitment-work-experience-manual-edit-plan.md

37 lines
1.9 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.
# 招聘信息历史工作经历手动编辑后端实施计划
## 文档信息
- 保存路径:`docs/plans/backend/2026-04-22-staff-recruitment-work-experience-manual-edit-plan.md`
- 适用范围:招聘信息管理编辑接口
- 需求目标:在招聘信息编辑页支持手动维护历史工作经历,并保证保存后落到 `ccdi_staff_recruitment_work` 子表
## 实施范围
1. 扩展招聘信息编辑 DTO允许接收历史工作经历列表。
2. 增加历史工作经历子项 DTO并对字符长度、年月格式进行基础校验。
3. 调整招聘信息编辑服务:
- 主表 `ccdi_staff_recruitment` 继续按原逻辑更新;
- 当招聘类型为 `SOCIAL` 且前端传入工作经历列表时,按招聘记录编号先删后插覆盖子表;
- 当招聘类型改为 `CAMPUS` 时,删除该记录已存在的历史工作经历。
## 实施步骤
1. 新增历史工作经历编辑 DTO约束 `companyName``departmentName``positionName`、年月等字段长度与格式。
2.`CcdiStaffRecruitmentEditDTO` 中增加 `workExperienceList` 字段,并启用嵌套校验。
3.`CcdiStaffRecruitmentServiceImpl.updateRecruitment` 中增加子表覆盖保存逻辑。
4. 保持详情查询逻辑不变,继续通过已有 `selectWorkExperienceList` 返回子表明细。
## 影响评估
- 仅影响招聘信息编辑接口,不影响招聘信息导入、详情查询、列表分页逻辑。
- 不新增数据库结构变更,不新增菜单或权限。
- 旧前端若未传 `workExperienceList`,社招编辑仍保留已有工作经历数据,不会被误删。
## 验证要点
1. 编辑社招记录时可提交多条历史工作经历并成功保存。
2. 编辑社招记录时删除全部历史工作经历后提交,子表数据应被清空。
3. 将社招记录改为校招后提交,历史工作经历应自动删除。
4. 非法年月格式或超长字段应被后端校验拒绝。