# CMS 公共招聘会管理接口文档 ## 基础路径 `/cms/publicJobFair` --- ## 界面功能操作指南 ### 页面一:招聘会列表页 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 公共招聘会管理 │ ├─────────────────────────────────────────────────────────────────┤ │ 招聘会标题: [________] 类型: [全部▼] [搜索] [重置] [+新增] │ ├─────────────────────────────────────────────────────────────────┤ │ □ | 标题 | 地址 | 类型 | 开始时间 | 操作 │ │ ───────────────────────────────────────────────────────────── │ │ □ | 春风行动招聘会 | 人力市场 | 线下 | 2026-01-20 | 编辑 删除 │ │ □ | 高校毕业生专场 | 线上 | 线上 | 2026-02-15 | 编辑 删除 │ ├─────────────────────────────────────────────────────────────────┤ │ 共 2 条 < 1 > │ └─────────────────────────────────────────────────────────────────┘ ``` | 操作 | 触发方式 | 调用接口 | |------|---------|---------| | 搜索 | 点击【搜索】按钮 | `GET /list` | | 重置 | 点击【重置】按钮 | 清空条件后调用 `GET /list` | | 新增 | 点击【+新增】按钮 | 打开新增弹窗 | | 编辑 | 点击行内【编辑】 | `GET /{id}` 获取详情后打开编辑弹窗 | | 删除 | 点击行内【删除】 | 确认后调用 `DELETE /{ids}` | | 批量删除 | 勾选多行后点击【删除】 | `DELETE /{ids}` (逗号分隔) | --- ### 页面二:新增/编辑招聘会弹窗 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 新增招聘会 [×] │ ├─────────────────────────────────────────────────────────────────┤ │ 招聘会标题*: [________________________________] │ │ 招聘会地址*: [________________________________] │ │ 招聘会类型*: ○线上 ●线下 │ │ 开始时间*: [2026-01-20 09:00:00 📅] │ │ 结束时间*: [2026-01-20 17:00:00 📅] │ │ 报名开始时间: [2026-01-10 00:00:00 📅] │ │ 报名结束时间: [2026-01-19 23:59:59 📅] │ │ 主办单位: [________________________________] │ │ 协办单位: [________________________________] │ │ 承办单位: [________________________________] │ │ 联系电话: [________________] │ │ 招聘会简介: [________________________________] │ │ [________________________________] │ │ │ │ 地图选点: [点击选择位置 🗺️] │ │ ┌─────────────────────────────────────────┐ │ │ │ │ │ │ │ 高德地图选点组件 │ │ │ │ 📍 │ │ │ │ │ │ │ └─────────────────────────────────────────┘ │ │ 经度: [86.0419 ] 纬度: [44.3066 ] │ ├─────────────────────────────────────────────────────────────────┤ │ [取消] [确定] │ └─────────────────────────────────────────────────────────────────┘ ``` | 操作 | 触发方式 | 调用接口 | |------|---------|---------| | 地图选点 | 点击地图或搜索地址 | 高德地图API,自动填充经纬度 | | 确定(新增) | 填写表单后点击【确定】 | `POST /` | | 确定(编辑) | 修改表单后点击【确定】 | `PUT /` | | 取消 | 点击【取消】或【×】 | 关闭弹窗 | --- ### 页面三:招聘会详情页(含企业岗位管理) ``` ┌─────────────────────────────────────────────────────────────────┐ │ 招聘会详情: 春风行动专场招聘会 [返回列表] │ ├─────────────────────────────────────────────────────────────────┤ │ 基本信息 │ │ ───────────────────────────────────────────────────────────── │ │ 标题: 春风行动专场招聘会 类型: 线下 │ │ 地址: 石河子市人力资源市场 电话: 0993-2012345 │ │ 时间: 2026-01-20 09:00 ~ 17:00 │ │ 报名时间: 2026-01-10 ~ 2026-01-19 │ ├─────────────────────────────────────────────────────────────────┤ │ 参会企业及岗位 [+添加企业] │ │ ───────────────────────────────────────────────────────────── │ │ ▼ 新疆某某科技有限公司 (互联网/100-499人) [移除企业] │ │ ├─ Java开发工程师 | 8K-15K | 本科 | 招2人 [+添加岗位] [移除]│ │ └─ 前端开发工程师 | 7K-12K | 大专 | 招3人 [移除]│ │ ▼ 石河子农业发展有限公司 (农业/50-99人) [移除企业] │ │ └─ 农业技术员 | 5K-8K | 大专 | 招5人 [移除]│ ├─────────────────────────────────────────────────────────────────┤ │ 报名人员 [查看全部报名] │ │ ───────────────────────────────────────────────────────────── │ │ 张三 | 13800138000 | 2026-01-15 10:30 | 已报名 │ │ 李四 | 13900139000 | 2026-01-16 14:20 | 已报名 │ └─────────────────────────────────────────────────────────────────┘ ``` | 操作 | 触发方式 | 调用接口 | |------|---------|---------| | 进入详情 | 列表页点击【编辑】或行 | `GET /{jobFairId}` | | 添加企业 | 点击【+添加企业】 | 打开企业选择弹窗 | | 移除企业 | 点击企业行【移除企业】 | `DELETE /company/{id}` | | 添加岗位 | 点击企业下【+添加岗位】 | 打开岗位选择弹窗 | | 移除岗位 | 点击岗位行【移除】 | `DELETE /job/{id}` | | 查看全部报名 | 点击【查看全部报名】 | 跳转报名列表页 | --- ### 页面四:添加企业弹窗 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 选择企业 [×] │ ├─────────────────────────────────────────────────────────────────┤ │ 企业名称: [________] [搜索] │ ├─────────────────────────────────────────────────────────────────┤ │ □ | 企业名称 | 行业 | 规模 | 类型 │ │ ───────────────────────────────────────────────────────────── │ │ ☑ | 新疆某某科技有限公司 | 互联网 | 100-499人 | 民营 │ │ ☑ | 石河子农业发展有限公司 | 农业 | 50-99人 | 国企 │ │ □ | 某某建筑工程公司 | 建筑 | 500-999人 | 民营 │ ├─────────────────────────────────────────────────────────────────┤ │ [取消] [确定添加] │ └─────────────────────────────────────────────────────────────────┘ ``` | 操作 | 触发方式 | 调用接口 | |------|---------|---------| | 搜索企业 | 输入名称点击【搜索】 | 调用企业列表接口 | | 确定添加(单个) | 勾选1个企业点击【确定添加】 | `POST /company` | | 确定添加(多个) | 勾选多个企业点击【确定添加】 | `POST /company/batch` | --- ### 页面五:添加岗位弹窗 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 选择岗位 - 新疆某某科技有限公司 [×] │ ├─────────────────────────────────────────────────────────────────┤ │ 岗位名称: [________] [搜索] │ ├─────────────────────────────────────────────────────────────────┤ │ □ | 岗位名称 | 薪资 | 学历 | 经验 | 招聘人数 │ │ ───────────────────────────────────────────────────────────── │ │ ☑ | Java开发工程师 | 8K-15K | 本科 | 3-5年 | 2人 │ │ ☑ | 前端开发工程师 | 7K-12K | 大专 | 1-3年 | 3人 │ │ □ | 产品经理 | 10K-20K | 本科 | 5年以上| 1人 │ ├─────────────────────────────────────────────────────────────────┤ │ [取消] [确定添加] │ └─────────────────────────────────────────────────────────────────┘ ``` | 操作 | 触发方式 | 调用接口 | |------|---------|---------| | 搜索岗位 | 输入名称点击【搜索】 | 调用该企业岗位列表接口 | | 确定添加(单个) | 勾选1个岗位点击【确定添加】 | `POST /job` | | 确定添加(多个) | 勾选多个岗位点击【确定添加】 | `POST /job/batch` | --- ### 页面六:报名人员列表页 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 报名人员 - 春风行动专场招聘会 [返回详情] │ ├─────────────────────────────────────────────────────────────────┤ │ 用户名: [________] 状态: [全部▼] [搜索] [重置] [导出] │ ├─────────────────────────────────────────────────────────────────┤ │ 用户名 | 姓名 | 手机号 | 报名时间 | 状态 │ │ ───────────────────────────────────────────────────────────── │ │ zhangsan | 张三 | 13800138000 | 2026-01-15 10:30:00 | 已报名 │ │ lisi | 李四 | 13900139000 | 2026-01-16 14:20:00 | 已报名 │ │ wangwu | 王五 | 13700137000 | 2026-01-17 09:15:00 | 已取消 │ ├─────────────────────────────────────────────────────────────────┤ │ 共 3 条 < 1 > │ └─────────────────────────────────────────────────────────────────┘ ``` | 操作 | 触发方式 | 调用接口 | |------|---------|---------| | 搜索 | 点击【搜索】按钮 | `GET /signups/{jobFairId}` | | 重置 | 点击【重置】按钮 | 清空条件后调用 `GET /signups/{jobFairId}` | | 导出 | 点击【导出】按钮 | 可扩展导出接口 | --- ## 接口详情 ### 1. 查询招聘会列表 - **URL**: `GET /cms/publicJobFair/list` - **权限**: `cms:publicJobFair:list` - **请求参数**: | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | pageNum | Integer | 否 | 页码,默认1 | | pageSize | Integer | 否 | 每页条数,默认10 | | jobFairTitle | String | 否 | 招聘会标题(模糊查询) | | jobFairType | String | 否 | 招聘会类型(1-线上 2-线下) | - **响应示例**: ```json { "code": 200, "rows": [{ "jobFairId": "1", "jobFairTitle": "2026年春风行动专场招聘会", "jobFairAddress": "石河子市人力资源市场", "jobFairType": "2", "jobFairStartTime": "2026-01-20 10:00:00", "jobFairEndTime": "2026-01-20 16:00:00", "enterpriseNum": "3", "boothNum": "10" }], "total": 1 } ``` --- ### 2. 获取招聘会详情(含企业及岗位) - **URL**: `GET /cms/publicJobFair/{jobFairId}` - **权限**: `cms:publicJobFair:query` - **响应示例**: ```json { "code": 200, "data": { "jobFairId": "1", "jobFairTitle": "2026年春风行动专场招聘会", "jobFairAddress": "石河子市人力资源市场", "jobFairType": "2", "jobFairStartTime": "2026-01-20 10:00:00", "jobFairEndTime": "2026-01-20 16:00:00", "jobFairHostUnit": "石河子市人社局", "jobFairIntroduction": "招聘会简介...", "latitude": 44.3066, "longitude": 86.0419, "companyList": [{ "id": "company-relation-id", "companyId": 100, "companyName": "新疆某某科技有限公司", "scale": "100-499人", "industry": "互联网/IT", "companyType": "民营企业", "jobInfoList": [{ "jobId": 200, "jobTitle": "Java开发工程师", "minSalary": 8000, "maxSalary": 15000, "education": "本科", "experience": "3-5年", "vacancies": 2 }] }] } } ``` --- ### 3. 新增招聘会 - **URL**: `POST /cms/publicJobFair` - **权限**: `cms:publicJobFair:add` - **请求体**: ```json { "jobFairTitle": "招聘会标题", "jobFairAddress": "招聘会地址", "jobFairType": "2", "jobFairStartTime": "2026-02-01 09:00:00", "jobFairEndTime": "2026-02-01 17:00:00", "jobFairHostUnit": "主办单位", "jobFairIntroduction": "招聘会简介", "jobFairPhone": "联系电话", "jobFairSignUpStartTime": "2026-01-20 00:00:00", "jobFairSignUpEndTime": "2026-01-31 23:59:59", "latitude": 44.3066, "longitude": 86.0419 } ``` --- ### 4. 修改招聘会 - **URL**: `PUT /cms/publicJobFair` - **权限**: `cms:publicJobFair:edit` - **请求体**: 同新增,需包含 `jobFairId` --- ### 5. 删除招聘会 - **URL**: `DELETE /cms/publicJobFair/{jobFairIds}` - **权限**: `cms:publicJobFair:remove` - **说明**: 支持批量删除,多个ID用逗号分隔 --- ### 6. 添加企业到招聘会 - **URL**: `POST /cms/publicJobFair/company` - **权限**: `cms:publicJobFair:edit` - **请求体**: ```json { "jobFairId": "1", "companyId": 100 } ``` --- ### 7. 批量添加企业 - **URL**: `POST /cms/publicJobFair/company/batch` - **请求体**: ```json [ {"jobFairId": "1", "companyId": 100}, {"jobFairId": "1", "companyId": 101} ] ``` --- ### 8. 移除招聘会企业 - **URL**: `DELETE /cms/publicJobFair/company/{id}` - **说明**: `id` 为关联表主键 --- ### 9. 添加岗位到招聘会 - **URL**: `POST /cms/publicJobFair/job` - **请求体**: ```json { "jobFairId": "1", "jobId": 200, "companyId": 100 } ``` --- ### 10. 批量添加岗位 - **URL**: `POST /cms/publicJobFair/job/batch` - **请求体**: ```json [ {"jobFairId": "1", "jobId": 200, "companyId": 100}, {"jobFairId": "1", "jobId": 201, "companyId": 100} ] ``` --- ### 11. 移除招聘会岗位 - **URL**: `DELETE /cms/publicJobFair/job/{id}` --- ### 12. 查询招聘会报名列表 - **URL**: `GET /cms/publicJobFair/signups/{jobFairId}` - **权限**: `cms:publicJobFair:query` - **响应示例**: ```json { "code": 200, "rows": [{ "id": 1, "jobFairId": 1, "userId": 1, "userName": "zhangsan", "realName": "张三", "phone": "13800138000", "signUpTime": "2026-01-15 10:30:00", "status": "0" }], "total": 1 } ``` --- ### 13. 查询招聘会企业及岗位 - **URL**: `GET /cms/publicJobFair/companies/{jobFairId}` - **权限**: `cms:publicJobFair:query` --- ## 数据字典 ### 招聘会类型 (jobFairType) | 值 | 说明 | |---|------| | 1 | 线上招聘会 | | 2 | 线下招聘会 | ### 报名状态 (status) | 值 | 说明 | |---|------| | 0 | 已报名 | | 1 | 已取消 |