第一步:生成招聘页面原型图
cursor
根据以下需求生成招聘模块的Figma原型图:
页面组成:
- 招聘公告列表页(带搜索/筛选)
- 职位详情页(申请按钮)
- 简历填写表单(分步骤)
- HR管理后台(职位发布表单)
核心功能:
- 应聘者能浏览公开职位
- HR能发布新职位(含工作地点/要求等字段)
- 响应式布局(支持移动端)
数据字段参考:
- 职位:title, department, location, description, requirements
- 简历:personal_info, education[], work_experience[], skills
角色权限:
- 应聘者:仅查看/申请
- HR:增删改职位
第二步:生成招聘模块表结构
cursor
生成符合MySQL规范的SQL建表语句,包含以下核心表:
jobs 职位表:
- id (PK)
- title VARCHAR(100)
- department ENUM('教学','行政','科研')
- salary_range VARCHAR(50)
- location VARCHAR(100)
- description TEXT
- requirements TEXT
- is_active BOOLEAN (是否在招)
- created_at TIMESTAMP
- created_by (FK to users)
applicants 应聘者表:
- user_id (PK, FK to users)
- resume_file_path VARCHAR(255)
- current_status ENUM('active','hired','rejected')
applications 申请记录表:
- id (PK)
- job_id (FK)
- applicant_id (FK)
- apply_time TIMESTAMP
- status ENUM('pending','interviewed','offered')
补充关联表:
- resumes (存储结构化简历数据)
- application_attachments (附件)
第三步:初始化数据库
cursor
基于上述表结构执行以下操作:
创建名为recruitment_system的MySQL数据库
生成各表的DDL语句(包含外键约束)
为每个表添加基础索引:
- jobs表的department/is_active字段
- applications表的job_id/applicant_id字段
插入测试数据:
- 5个示例职位(3个教学岗、2个行政岗)
- 10条模拟应聘者记录
- 每个职位关联2-3条申请记录
第四步:前后端开发指令
cursor
使用MERN栈开发招聘模块,分两部分实现:
【前端部分】
创建React页面:
- /jobs 职位列表页(带Ant Design表格)
- /jobs/:id 职位详情页
- /apply 简历表单(分教育/工作经历多步骤)
主要功能组件:
- 职位搜索过滤器(部门/工作地点)
- 简历PDF上传组件
- 申请状态跟踪面板
【后端部分】
创建Express路由:
- GET /api/jobs (支持分页查询)
- POST /api/jobs (HR权限校验)
- POST /api/applications
核心业务逻辑:
- 职位发布时自动生成公告
- 申请时发送邮件通知HR
- 简历文件存储到AWS S3
权限控制中间件:
- 应聘者只能访问GET /jobs
- HR角色需要JWT校验