4.6 KiB
4.6 KiB
员工招聘功能自验收清单
验收日期:2026-04-20
验收范围
本次自验收覆盖员工招聘页面与接口联动所需的前后端能力,包括招聘类型、候选人历史工作经历、工作经历单独导入、详情/编辑页展示顺序、面试官字段展示一致性,以及基于现有招聘数据补充联调样例数据。
前端页面
- 查询条件保持原有结构,仅新增“招聘类型”筛选项。
- 顶部操作区包含“新增”“导入”“导入工作经历”“导出”。
- 列表列按最新口径展示:招聘记录编号、招聘项目名称、职位名称、候选人姓名、录用情况、学历 / 毕业学校、招聘类型、历史工作经历、操作。
- 列表“操作”列包含“详情”“编辑”“删除”按钮。
- 招聘项目名称列已加宽,长名称不再只显示为“办结”一类截断残片。
- “学历 / 毕业学校”在列表合并展示,详情/编辑中仍保留学历、毕业院校、毕业年月、专业等候选人基础字段。
- 详情页模块顺序为:招聘岗位信息、录用情况、候选人情况、候选人历史工作经历、面试官信息。
- 编辑页模块顺序与详情页保持一致:招聘岗位信息、录用情况、候选人情况、面试官信息。
- 详情页“面试官信息”统一按四个字段展示:面试官1姓名、面试官1工号、面试官2姓名、面试官2工号。
- 详情页不再展示重复的“社招工作经历摘要”,只保留“候选人历史工作经历”。
- 工作经历导入使用独立入口、独立模板、独立上传接口。
后端接口与数据结构
- 主表
ccdi_staff_recruitment保留原有创建/更新人员字段命名,不改动既有审计字段口径。 - 主表新增
recruit_type,用于区分社招、校招。 - 历史工作经历使用独立表
ccdi_staff_recruitment_work,不把工作经历摘要字段放入主表。 - 列表查询聚合返回历史工作经历段数,避免前端列表加载完整经历明细。
- 详情查询返回完整历史工作经历列表。
- 删除招聘记录时同步删除对应历史工作经历。
- 工作经历导入以招聘记录编号为唯一匹配依据。
- 工作经历导入时,候选人姓名、招聘项目名称、职位名称仅用于人工核对和导入校验。
- 工作经历导入时,三个辅助字段与主表不一致则禁止导入。
- 工作经历导入只允许社招记录导入,校招记录禁止导入。
- 同一个招聘记录编号在工作经历导入文件中任意一行失败时,该招聘记录编号下本次所有工作经历均不覆盖入库。
数据库与联调样例数据
- 已补充数据库迁移脚本:
sql/migration/2026-04-15-add-staff-recruitment-social-work-summary.sql。 - 已补充现有数据联调样例脚本:
sql/migration/2026-04-20-seed-staff-recruitment-work-existing-data.sql。 - 样例脚本不改动已有招聘项目名称、职位名称、候选人姓名、录用情况、面试官等原始业务信息。
- 样例脚本只在招聘类型为空时补充
recruit_type,并生成带标记的历史工作经历样例。 - 数据库验证结果:
SOCIAL = 4646,CAMPUS = 1355。 - 数据库验证结果:已生成历史工作经历样例
25条,覆盖社招招聘记录20条。
构建与验证
- 后端编译通过:
mvn -pl ccdi-info-collection -am compile -DskipTests。 - 前端生产构建通过:
npm run build:prod。 - 前端构建仅存在体积提示类 warning,未出现编译错误。
- 前端预览截图已生成,覆盖列表、工作经历导入、详情面试官展示。
- 验证过程中启动的前端预览进程已停止,未保留 8088 端口监听。
预览截图
- 列表页:
C:\Users\20696\codex-preview\staff-recruitment-work-import-list.png - 工作经历导入弹窗:
C:\Users\20696\codex-preview\staff-recruitment-work-import-dialog.png - 详情页面试官四字段展示:
C:\Users\20696\codex-preview\staff-recruitment-detail-interviewer-separated.png
注意事项
- 当前机器无法通过
bin/mysql_utf8_exec.sh调用 MySQL 客户端执行中文 SQL,实际数据库脚本执行采用本地 Maven 缓存中的 MySQL JDBC 驱动,并显式设置utf8mb4会话字符集。 - 列表默认第一页如果主要是校招记录,“历史工作经历”可能显示为
-;筛选“社招”后可看到已补充的工作经历段数。 - 仓库中存在与本次招聘功能无关的未跟踪
docx文件,本次未处理、未纳入验收范围。