datai/docs/archive/api-docs/integration/DataiIntegrationObjectController/0012-query-insert-progress.md

112 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 查询指定对象的插入进度
## 接口信息
- **接口名称**: 查询指定对象的插入进度
- **接口路径**: `/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系统