# 查询指定对象的插入进度 ## 接口信息 - **接口名称**: 查询指定对象的插入进度 - **接口路径**: `/integration/object/insertProgress/{id}` - **请求方法**: GET - **接口描述**: 该方法用于查询指定对象的插入进度信息。进度信息包括:对象ID、插入类型、总批次数量、已处理批次数量、当前批次、进度百分比、开始时间、结束时间、状态、错误信息。如果插入任务已完成或失败,进度信息会被清除,此时无法查询到进度信息。 ## 请求参数 ### 路径参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | id | Integer | 是 | 对象ID,用于标识需要查询插入进度的对象 | ### 请求示例 ```http GET /integration/object/insertProgress/123 ``` ## 响应参数 ### 响应格式 ```json { "code": 200, "msg": "操作成功", "data": { "objectId": 123, "syncType": "INSERT", "totalBatches": 10, "processedBatches": 5, "currentBatch": 5, "progressPercentage": 50, "startTime": "2026-01-16 10:00:00", "endTime": null, "status": "RUNNING", "errorMessage": null } } ``` ### 响应字段说明 | 字段名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应状态码,200表示成功,其他表示失败 | | msg | String | 响应消息,成功时返回"操作成功",失败时返回错误信息 | | data | Object | 响应数据,包含插入进度信息 | | data.objectId | Integer | 对象ID | | data.syncType | String | 插入类型(INSERT) | | data.totalBatches | Integer | 总批次数量 | | data.processedBatches | Integer | 已处理批次数量 | | data.currentBatch | Integer | 当前批次 | | data.progressPercentage | Integer | 进度百分比(0-100) | | data.startTime | String | 开始时间,格式:yyyy-MM-dd HH:mm:ss | | data.endTime | String | 结束时间,格式:yyyy-MM-dd HH:mm:ss,插入进行中时为null | | data.status | String | 状态(RUNNING/COMPLETED/FAILED) | | data.errorMessage | String | 错误信息,插入成功时为null | ### 响应示例(失败) ```json { "code": 500, "msg": "未找到插入进度信息", "data": null } ``` ## 权限要求 - **权限标识**: `integration:object:progress` - **说明**: 需要登录认证,且用户需要具有查询对象插入进度的权限 ## 业务规则 1. 如果对象ID为空,返回错误信息"对象ID不能为空" 2. 如果未找到插入进度信息(插入任务已完成或失败),返回错误信息"未找到插入进度信息" 3. 进度信息存储在内存中,系统重启后进度信息丢失 4. 插入任务完成后立即清除进度信息,不保留历史记录 ## 异常处理 | 异常场景 | 响应码 | 响应消息 | |----------|---------|----------| | 对象ID为空 | 500 | 对象ID不能为空 | | 未找到插入进度信息 | 500 | 未找到插入进度信息 | | 查询进度时发生异常 | 500 | 查询对象插入进度时发生异常: [异常信息] | ## 使用场景 1. 用户触发对象插入后,通过该接口查询插入进度 2. 前端页面定时轮询该接口,实时显示插入进度 3. 管理员监控多个对象的插入进度 ## 注意事项 1. 进度信息仅在插入进行中存在,插入完成后会被清除 2. 如果查询到进度信息,说明插入正在进行中 3. 如果未查询到进度信息,说明插入已完成或失败,或者从未触发过插入 4. 进度百分比计算公式:progressPercentage = (processedBatches / totalBatches) * 100 ## 相关接口 - [查询所有正在插入的对象进度](0013-query-all-insert-progress.md) - 查询所有正在插入的对象进度列表 - [对象数据插入目标系统](0010-insert-object-data-to-target.md) - 将本地数据库中的指定对象数据插入到目标Salesforce系统