# add_parse_task 接口返回数据格式说明 ## 接口概述 `add_parse_task` 接口用于新增解析任务,支持多种任务类型:名片、简历、新任命、招聘、杂项。根据任务类型的不同,返回的数据格式也有所差异。 ## 通用返回格式 所有响应都遵循以下通用格式: ```json { "success": boolean, "message": string, "data": object | null } ``` ## HTTP 状态码 - **200**: 所有文件上传成功,任务创建成功 - **206**: 部分文件上传成功,任务创建成功 - **400**: 请求参数错误 - **500**: 服务器内部错误 ## 成功响应格式 ### 1. 文件上传类型任务(名片、简历、新任命、杂项) ```json { "success": true, "message": "解析任务创建成功,所有文件上传完成", "data": { "id": 123, "task_name": "parse_task_20241201_a1b2c3d4", "task_status": "待解析", "task_type": "名片", "task_source": [ {"original_filename": "张三名片.jpg", "minio_path":"https://192.168.3.143:9000/dataops-platform/talent_photos/20241201_001234_张三名片.jpg", "status":"正常"}, {"original_filename": "李四名片.png", "minio_path":"https://192.168.3.143:9000/dataops-platform/talent_photos/20241201_001235_李四名片.png", "status":"出错"} ], "collection_count": 2, "parse_count": 0, "parse_result": null, "created_at": "2024-12-01 10:30:45", "created_by": "api_user", "updated_at": "2024-12-01 10:30:45", "updated_by": "api_user" } } ``` ### 2. 招聘类型任务 ```json { "success": true, "message": "招聘任务创建成功", "data": { "id": 123, "task_name": "parse_task_20241201_a1b2c3d4", "task_status": "待解析", "task_type": "招聘", "task_source":[ { "name_zh": "王维全", "name_en": "Tom", "age": 54, "birthday": "1971-01-08", "career_path": [ { "date": "2019-07-01", "hotel_zh": "太舞·帕思顿酒店", "title_zh": "总经理" } ], "created_at": "2024-10-09", "email": "514103553@qq.com", "mobile": "13801018434", "updated_at": "2025-07-02", "id": "1843919715576168450", "userId": "390325402075271168" }, { "name_zh": "张勇刚", "name_en": "Jack", "age": 34, "birthday": "1991-01-08", "career_path": [ { "date": "2022-06-01", "hotel_zh": "丽江希尔顿酒店", "title_zh": "总经理" } ], "created_at": "2024-10-09", "email": "56723@126.com", "mobile": "13901018434", "updated_at": "2025-07-02", "id": "1843919715576168651", "userId": "390325402075271269" } ], "collection_count": 2, "parse_count": 0, "parse_result": null, "created_at": "2024-12-01 10:30:45", "created_by": "api_user", "updated_at": "2024-12-01 10:30:45", "updated_by": "api_user" } } ``` ### 3. 部分成功响应(状态码 206) 当部分文件上传失败时,返回格式如下: ```json 参考文件上传类型任务的返回格式。可以把出错的文件status设置为出错。 ``` ## 错误响应格式 ### 1. 参数错误(状态码 400) ```json { "success": false, "message": "缺少task_type参数", "data": null } ``` ```json { "success": false, "message": "task_type参数必须是以下值之一:名片、简历、新任命、招聘、杂项", "data": null } ``` ```json { "success": false, "message": "名片任务需要上传文件,请使用files字段上传文件", "data": null } ``` ```json { "success": false, "message": "招聘类型任务不需要上传文件", "data": null } ``` ```json { "success": false, "message": "新任命类型任务需要提供publish_time参数", "data": null } ``` ### 2. 服务器错误(状态码 500) ```json { "success": false, "message": "无法连接到MinIO服务器", "data": null } ``` ```json { "success": false, "message": "所有文件上传失败", "data": { "uploaded_count": 0, "failed_count": 2, "failed_uploads": [ { "filename": "名片1.jpg", "error": "文件上传失败:网络连接超时" }, { "filename": "名片2.png", "error": "文件上传失败:存储空间不足" } ] } } ``` ## 特殊说明 1. **新任命类型**:在 `task_source` 中会额外包含 `publish_time` 字段 2. **招聘类型**:不需要文件上传,minio_paths为空 3. **文件路径**:所有文件都会上传到MinIO存储,路径格式为 `https://host:port/bucket/directory/filename` 4. **任务名称**:自动生成,格式为 `parse_task_YYYYMMDD_UUID` 或 `recruitment_task_YYYYMMDD_UUID` 5. **状态码206**:表示部分成功,通常用于文件上传时部分文件失败的情况