# 企业信息管理API接口文档 > 文档创建人:admin > 创建日期:2023-07-05 > 文档状态:创建中 ## 1. 概述 本文档描述了企业信息管理模块的API接口设计。企业信息管理模块包含企业基本信息管理、招聘岗位管理以及招聘海报生成功能。 ### 1.1 基础信息 - 接口基础路径:`/zsjy/enterprise` - 请求方式:`GET`、`POST`、`PUT`、`DELETE` - 认证方式:Bearer Token - 响应格式:统一响应格式 ### 1.2 数据结构 #### 1.2.1 企业信息 (EnterpriseVO) ```json { "id": "企业ID,long型", "enterpriseName": "企业名称,字符串", "industry": "所属行业,字典值", "mainBusiness": "主营业务,字符串", "enterpriseScale": "企业规模,字典值", "contactName": "企业联系人姓名,字符串", "contactPhone": "联系电话,字符串", "email": "企业邮箱,字符串", "address": "企业地址,字符串", "status": "状态(0正常 1停用),字符", "remark": "备注,字符串", "createBy": "创建者,long型", "createTime": "创建时间,日期时间", "updateBy": "更新者,long型", "updateTime": "更新时间,日期时间" } ``` #### 1.2.2 招聘岗位信息 (JobPositionVO) ```json { "id": "岗位ID,long型", "enterpriseId": "所属企业ID,long型", "enterpriseName": "所属企业名称,字符串", "positionName": "岗位名称,字符串", "workAddress": "工作地址,字符串", "workTime": "工作时间,字符串", "salary": "薪资,字符串", "requiredSkills": "所需技能,字符串", "startDate": "有效期开始日期,日期时间", "endDate": "有效期结束日期,日期时间", "isPermanent": "是否永久有效(0否 1是),整型", "status": "状态(0正常 1停用),字符", "remark": "备注,字符串", "createBy": "创建者,long型", "createTime": "创建时间,日期时间", "updateBy": "更新者,long型", "updateTime": "更新时间,日期时间" } ``` #### 1.2.3 招聘海报 (RecruitmentPosterVO) ```json { "id": "海报ID,long型", "enterpriseId": "企业ID,long型", "enterpriseName": "企业名称,字符串", "positionId": "岗位ID,long型", "positionName": "岗位名称,字符串", "posterPath": "海报文件路径,字符串", "posterType": "海报类型(1企业海报 2岗位海报),字符", "createBy": "创建者,long型", "createTime": "创建时间,日期时间", "updateBy": "更新者,long型", "updateTime": "更新时间,日期时间" } ``` ## 2. 接口定义 ### 2.1 企业信息管理接口 #### 2.1.1 获取企业列表 - **接口URL**:`/zsjy/enterprise/list` - **请求方式**:`GET` - **接口权限**:`zsjy:enterprise:list` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------------|----------|----------|----------|----------|-------------------------| | pageNum | 页码 | query | 是 | int | 默认为1 | | pageSize | 每页数量 | query | 是 | int | 默认为10 | | enterpriseName | 企业名称 | query | 否 | string | 模糊匹配 | | industry | 所属行业 | query | 否 | string | 精确匹配,来自数据字典 | | status | 状态 | query | 否 | string | 0正常 1停用 | - **响应参数**: ```json { "total": "总记录数", "rows": "企业列表数据,数组类型,每个元素为EnterpriseVO对象", "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.1.2 获取企业详情 - **接口URL**:`/zsjy/enterprise/{id}` - **请求方式**:`GET` - **接口权限**:`zsjy:enterprise:query` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------|----------|----------|----------|----------|------------| | id | 企业ID | path | 是 | long | 路径变量 | - **响应参数**: ```json { "code": "状态码,200表示成功", "data": "企业详情数据,EnterpriseVO对象", "msg": "消息提示" } ``` #### 2.1.3 新增企业信息 - **接口URL**:`/zsjy/enterprise` - **请求方式**:`POST` - **接口权限**:`zsjy:enterprise:add` - **请求参数**:EnterpriseVO对象(不含id、createBy、createTime、updateBy、updateTime字段) - **响应参数**: ```json { "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.1.4 修改企业信息 - **接口URL**:`/zsjy/enterprise` - **请求方式**:`PUT` - **接口权限**:`zsjy:enterprise:edit` - **请求参数**:EnterpriseVO对象(必须包含id字段) - **响应参数**: ```json { "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.1.5 删除企业信息 - **接口URL**:`/zsjy/enterprise/{ids}` - **请求方式**:`DELETE` - **接口权限**:`zsjy:enterprise:remove` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------|-----------------------------|----------|----------|----------|-----------------------| | ids | 企业ID,多个以逗号分隔 | path | 是 | string | 例如:1 或 1,2,3 | - **响应参数**: ```json { "code": "状态码,200表示成功", "msg": "消息提示" } ``` ### 2.2 招聘岗位管理接口 #### 2.2.1 获取岗位列表 - **接口URL**:`/zsjy/position/list` - **请求方式**:`GET` - **接口权限**:`zsjy:position:list` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |--------------|--------------|----------|----------|----------|-------------------------| | pageNum | 页码 | query | 是 | int | 默认为1 | | pageSize | 每页数量 | query | 是 | int | 默认为10 | | enterpriseId | 企业ID | query | 否 | long | 精确匹配 | | positionName | 岗位名称 | query | 否 | string | 模糊匹配 | | status | 状态 | query | 否 | string | 0正常 1停用 | - **响应参数**: ```json { "total": "总记录数", "rows": "岗位列表数据,数组类型,每个元素为JobPositionVO对象", "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.2.2 获取岗位详情 - **接口URL**:`/zsjy/position/{id}` - **请求方式**:`GET` - **接口权限**:`zsjy:position:query` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------|----------|----------|----------|----------|------------| | id | 岗位ID | path | 是 | long | 路径变量 | - **响应参数**: ```json { "code": "状态码,200表示成功", "data": "岗位详情数据,JobPositionVO对象", "msg": "消息提示" } ``` #### 2.2.3 新增招聘岗位 - **接口URL**:`/zsjy/position` - **请求方式**:`POST` - **接口权限**:`zsjy:position:add` - **请求参数**:JobPositionVO对象(不含id、createBy、createTime、updateBy、updateTime字段) - **响应参数**: ```json { "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.2.4 修改招聘岗位 - **接口URL**:`/zsjy/position` - **请求方式**:`PUT` - **接口权限**:`zsjy:position:edit` - **请求参数**:JobPositionVO对象(必须包含id字段) - **响应参数**: ```json { "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.2.5 删除招聘岗位 - **接口URL**:`/zsjy/position/{ids}` - **请求方式**:`DELETE` - **接口权限**:`zsjy:position:remove` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------|-----------------------------|----------|----------|----------|-----------------------| | ids | 岗位ID,多个以逗号分隔 | path | 是 | string | 例如:1 或 1,2,3 | - **响应参数**: ```json { "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.2.6 获取企业下的岗位列表 - **接口URL**:`/zsjy/position/enterprise/{enterpriseId}` - **请求方式**:`GET` - **接口权限**:`zsjy:position:list` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |--------------|--------------|----------|----------|----------|-------------------------| | enterpriseId | 企业ID | path | 是 | long | 路径变量 | - **响应参数**: ```json { "code": "状态码,200表示成功", "data": "岗位列表数据,数组类型,每个元素为JobPositionVO对象", "msg": "消息提示" } ``` ### 2.3 招聘海报管理接口 #### 2.3.1 生成企业招聘海报 - **接口URL**:`/zsjy/poster/enterprise/{enterpriseId}` - **请求方式**:`POST` - **接口权限**:`zsjy:poster:generate` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |--------------|----------|----------|----------|----------|------------| | enterpriseId | 企业ID | path | 是 | long | 路径变量 | - **响应参数**: ```json { "code": "状态码,200表示成功", "data": { "posterPath": "生成的海报文件路径", "posterId": "海报记录ID" }, "msg": "消息提示" } ``` #### 2.3.2 生成岗位招聘海报 - **接口URL**:`/zsjy/poster/position/{positionId}` - **请求方式**:`POST` - **接口权限**:`zsjy:poster:generate` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |------------|----------|----------|----------|----------|------------| | positionId | 岗位ID | path | 是 | long | 路径变量 | - **响应参数**: ```json { "code": "状态码,200表示成功", "data": { "posterPath": "生成的海报文件路径", "posterId": "海报记录ID" }, "msg": "消息提示" } ``` #### 2.3.3 获取海报列表 - **接口URL**:`/zsjy/poster/list` - **请求方式**:`GET` - **接口权限**:`zsjy:poster:list` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |--------------|--------------|----------|----------|----------|-----------------------------| | pageNum | 页码 | query | 是 | int | 默认为1 | | pageSize | 每页数量 | query | 是 | int | 默认为10 | | enterpriseId | 企业ID | query | 否 | long | 精确匹配 | | posterType | 海报类型 | query | 否 | string | 1企业海报 2岗位海报 | - **响应参数**: ```json { "total": "总记录数", "rows": "海报列表数据,数组类型,每个元素为RecruitmentPosterVO对象", "code": "状态码,200表示成功", "msg": "消息提示" } ``` #### 2.3.4 导出海报为图片 - **接口URL**:`/zsjy/poster/export/image/{id}` - **请求方式**:`GET` - **接口权限**:`zsjy:poster:export` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------|----------|----------|----------|----------|------------| | id | 海报ID | path | 是 | long | 路径变量 | - **响应参数**:图片文件流 #### 2.3.5 导出海报为PDF - **接口URL**:`/zsjy/poster/export/pdf/{id}` - **请求方式**:`GET` - **接口权限**:`zsjy:poster:export` - **请求参数**: | 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | 备注 | |----------|----------|----------|----------|----------|------------| | id | 海报ID | path | 是 | long | 路径变量 | - **响应参数**:PDF文件流 ## 3. 数据字典 ### 3.1 企业规模 (zsjy_enterprise_scale) | 字典值 | 字典名称 | 备注 | |--------|------------|------------| | 1-49 | 1-49人 | 小型企业 | | 50-99 | 50-99人 | | | 100-499| 100-499人 | 中型企业 | | 500-999| 500-999人 | | | 1000-4999| 1000-4999人 | 大型企业 | | 5000+ | 5000人以上 | 特大型企业 | ### 3.2 企业行业 (zsjy_enterprise_industry) | 字典值 | 字典名称 | |--------|---------------------| | IT | 互联网/IT/电子/通信 | | FINANCE| 金融/银行/保险 | | EDUCATION | 教育/培训/科研 | | ESTATE | 房地产/建筑 | | MEDICAL| 医疗/健康 | | TRADE | 贸易/零售/物流 | | MANUFACTURING | 制造业 | | MEDIA | 文化/媒体/娱乐 | | ENERGY | 能源/环保 | | GOVERNMENT | 政府/非营利组织 | | OTHER | 其他行业 | ### 3.3 岗位有效期类型 (zsjy_position_validity_type) | 字典值 | 字典名称 | 备注 | |--------|----------|----------------| | 1 | 永久有效 | 岗位永久有效 | | 0 | 日期区间 | 设置开始和结束日期| ## 4. 错误码 | 错误码 | 描述 | 备注 | |--------|------------------------|----------------------------| | 200 | 操作成功 | | | 500 | 系统内部错误 | | | 401 | 未授权,请重新登录 | | | 403 | 权限不足,禁止访问 | | | 50001 | 企业信息不存在 | 查询或操作不存在的企业时 | | 50002 | 岗位信息不存在 | 查询或操作不存在的岗位时 | | 50003 | 海报生成失败 | 生成海报时发生错误 | | 50004 | 导出失败 | 导出海报为图片或PDF时失败 | | 50005 | 该企业下存在岗位,不能删除 | 删除有关联岗位的企业时 |