# 招聘信息编辑页手动维护历史工作经历实施记录 ## 文档信息 - 保存路径:`docs/reports/implementation/2026-04-22-staff-recruitment-work-experience-manual-edit-implementation.md` - 实施日期:2026-04-22 - 关联范围:招聘信息管理前后端 ## 本次修改内容 ### 后端 1. 新增 `CcdiStaffRecruitmentWorkEditDTO`,接收编辑页提交的历史工作经历子项。 2. 在 `CcdiStaffRecruitmentEditDTO` 中补充 `workExperienceList` 字段,并启用嵌套校验。 3. 在 `CcdiStaffRecruitmentServiceImpl.updateRecruitment` 中增加历史工作经历覆盖保存逻辑: - 社招且前端传入工作经历列表时,按当前表单内容覆盖 `ccdi_staff_recruitment_work`; - 切换为校招时,自动清空该招聘记录的历史工作经历。 ### 前端 1. 在招聘信息编辑弹窗中新增“候选人历史工作经历”编辑表格。 2. 支持手动新增、删除历史工作经历,并在前端自动重排序号。 3. 将入职时间、离职时间改为月份选择器,避免手输格式错误。 4. 提交编辑前增加年月格式、开始结束时间顺序、必填项校验。 5. 编辑提交时将规范化后的历史工作经历列表一并提交给后端;新增请求继续沿用原字段集,不携带额外子表字段。 ## 影响范围 - 后端:招聘信息编辑接口、历史工作经历子表保存逻辑。 - 前端:招聘信息管理编辑弹窗。 - 文档:新增前后端实施计划与本实施记录。 ## 验证情况 1. Maven 编译校验通过: - 执行命令:`mvn -pl ccdi-info-collection -am compile -DskipTests` - 结果:编译成功。 2. 前端构建校验通过: - 执行命令:`cd ruoyi-ui && source ~/.nvm/nvm.sh && nvm use 14.21.3 && npm run build:prod` - 结果:构建成功,仅存在原有体积告警,无新增构建错误。 3. 浏览器实测通过: - 先通过真实登录页进入实际业务路由 `/maintain/staffRecruitment`; - 在真实“招聘信息管理”页面编辑社招记录 `RC2025001805`,手动新增一条历史工作经历并保存; - 保存后列表中的“历史工作经历”由 `0段` 变为 `1段`; - 打开真实详情弹窗后,新增的工作经历可正常展示。 - 在另一条 `0段` 记录的编辑弹窗中确认“入职时间 / 离职时间”已切换为月份选择器,点击后会弹出月份面板。 4. 测试进程清理: - 已关闭本次测试过程中打开的 Playwright 浏览器、前端 dev server 和后端进程。