datai-vue/doc/salesforce/integration/DataiIntegrationObjectController/0015-query-all-update-progress.md

130 lines
3.9 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/updateProgress`
- **请求方法**: GET
- **接口描述**: 该方法用于查询所有正在更新的对象进度信息。只返回状态为 RUNNING 的进度信息,不包括已完成或失败的进度信息。如果没有任何对象正在更新,返回空列表。
## 请求参数
### 请求示例
```http
GET /integration/object/updateProgress
```
## 响应参数
### 响应格式
```json
{
"code": 200,
"msg": "操作成功",
"data": [
{
"objectId": 123,
"syncType": "UPDATE",
"totalBatches": 10,
"processedBatches": 5,
"currentBatch": 5,
"progressPercentage": 50,
"startTime": "2026-01-16 10:00:00",
"endTime": null,
"status": "RUNNING",
"errorMessage": null
},
{
"objectId": 124,
"syncType": "UPDATE",
"totalBatches": 5,
"processedBatches": 2,
"currentBatch": 2,
"progressPercentage": 40,
"startTime": "2026-01-16 10:05:00",
"endTime": null,
"status": "RUNNING",
"errorMessage": null
}
]
}
```
### 响应字段说明
| 字段名 | 类型 | 说明 |
|--------|------|------|
| code | Integer | 响应状态码200表示成功其他表示失败 |
| msg | String | 响应消息,成功时返回"操作成功",失败时返回错误信息 |
| data | Array | 响应数据,包含所有正在更新的对象进度列表 |
| data[].objectId | Integer | 对象ID |
| data[].syncType | String | 更新类型UPDATE |
| 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": 200,
"msg": "操作成功",
"data": []
}
```
### 响应示例(失败)
```json
{
"code": 500,
"msg": "查询所有正在更新的对象进度时发生异常: [异常信息]",
"data": null
}
```
## 权限要求
- **权限标识**: `integration:object:progress`
- **说明**: 需要登录认证,且用户需要具有查询对象更新进度的权限
## 业务规则
1. 只返回状态为 RUNNING 的进度信息,不包括已完成或失败的进度信息
2. 如果没有任何对象正在更新,返回空列表
3. 进度信息存储在内存中,系统重启后进度信息丢失
4. 更新任务完成后立即清除进度信息,不保留历史记录
## 异常处理
| 异常场景 | 响应码 | 响应消息 |
|----------|---------|----------|
| 查询进度时发生异常 | 500 | 查询所有正在更新的对象进度时发生异常: [异常信息] |
## 使用场景
1. 管理员监控所有正在更新的对象进度
2. 前端页面定时轮询该接口,实时显示所有正在更新的对象进度
3. 系统监控和告警,当更新进度长时间未更新时发出告警
## 注意事项
1. 该接口只返回正在进行的更新任务,不包括已完成或失败的更新任务
2. 如果返回空列表,说明当前没有任何对象正在更新
3. 进度百分比计算公式progressPercentage = (processedBatches / totalBatches) * 100
4. 建议前端页面定时轮询该接口,轮询间隔建议为 1-5 秒
## 相关接口
- [查询指定对象的更新进度](0014-query-update-progress.md) - 查询指定对象的更新进度信息
- [对象数据更新目标系统](0011-update-object-data-to-target.md) - 将本地数据库中的指定对象数据更新到目标Salesforce系统