123 lines
4.1 KiB
Markdown
123 lines
4.1 KiB
Markdown
|
|
# 查询所有正在同步的对象进度
|
|||
|
|
|
|||
|
|
## 接口信息
|
|||
|
|
|
|||
|
|
- **接口名称**: 查询所有正在同步的对象进度
|
|||
|
|
- **接口路径**: `/integration/object/progress`
|
|||
|
|
- **请求方法**: GET
|
|||
|
|
- **接口描述**: 该方法用于查询所有正在同步的对象进度信息。只返回状态为 RUNNING 的进度信息,不包括已完成或失败的进度信息。每个进度信息包括:对象ID、同步类型、总批次数量、已处理批次数量、当前批次、进度百分比、开始时间、结束时间、状态、错误信息。
|
|||
|
|
|
|||
|
|
## 请求参数
|
|||
|
|
|
|||
|
|
### 路径参数
|
|||
|
|
|
|||
|
|
无
|
|||
|
|
|
|||
|
|
### 请求示例
|
|||
|
|
|
|||
|
|
```http
|
|||
|
|
GET /integration/object/progress
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 响应参数
|
|||
|
|
|
|||
|
|
### 响应格式
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"msg": "操作成功",
|
|||
|
|
"data": [
|
|||
|
|
{
|
|||
|
|
"objectId": 123,
|
|||
|
|
"syncType": "FULL",
|
|||
|
|
"totalBatches": 10,
|
|||
|
|
"processedBatches": 5,
|
|||
|
|
"currentBatch": 5,
|
|||
|
|
"progressPercentage": 50,
|
|||
|
|
"startTime": "2026-01-16 10:00:00",
|
|||
|
|
"endTime": null,
|
|||
|
|
"status": "RUNNING",
|
|||
|
|
"errorMessage": null
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"objectId": 124,
|
|||
|
|
"syncType": "INCREMENTAL",
|
|||
|
|
"totalBatches": 1,
|
|||
|
|
"processedBatches": 1,
|
|||
|
|
"currentBatch": 1,
|
|||
|
|
"progressPercentage": 100,
|
|||
|
|
"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 | 同步类型(FULL/INCREMENTAL) |
|
|||
|
|
| 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),本接口只返回 RUNNING 状态的进度 |
|
|||
|
|
| data[].errorMessage | String | 错误信息,同步进行中时为null |
|
|||
|
|
|
|||
|
|
### 响应示例(失败)
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"code": 500,
|
|||
|
|
"msg": "查询所有正在同步的对象进度时发生异常: [异常信息]",
|
|||
|
|
"data": null
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 权限要求
|
|||
|
|
|
|||
|
|
- **权限标识**: `integration:object:progress`
|
|||
|
|
- **说明**: 需要登录认证,且用户需要具有查询对象同步进度的权限
|
|||
|
|
|
|||
|
|
## 业务规则
|
|||
|
|
|
|||
|
|
1. 只返回状态为 RUNNING 的进度信息,不包括已完成或失败的进度信息
|
|||
|
|
2. 如果没有正在同步的对象,返回空数组 []
|
|||
|
|
3. 进度信息存储在内存中,系统重启后进度信息丢失
|
|||
|
|
4. 同步任务完成后立即清除进度信息,不保留历史记录
|
|||
|
|
|
|||
|
|
## 异常处理
|
|||
|
|
|
|||
|
|
| 异常场景 | 响应码 | 响应消息 |
|
|||
|
|
|----------|---------|----------|
|
|||
|
|
| 查询进度时发生异常 | 500 | 查询所有正在同步的对象进度时发生异常: [异常信息] |
|
|||
|
|
|
|||
|
|
## 使用场景
|
|||
|
|
|
|||
|
|
1. 管理员监控所有正在同步的对象进度
|
|||
|
|
2. 前端页面显示所有正在同步的对象列表
|
|||
|
|
3. 系统监控和告警,检测长时间未完成的同步任务
|
|||
|
|
|
|||
|
|
## 注意事项
|
|||
|
|
|
|||
|
|
1. 本接口只返回正在同步的对象进度,不包括已完成或失败的进度
|
|||
|
|
2. 如果需要查询特定对象的进度,请使用"查询指定对象的同步进度"接口
|
|||
|
|
3. 进度信息仅在同步进行中存在,同步完成后会被清除
|
|||
|
|
4. 进度百分比计算公式:progressPercentage = (processedBatches / totalBatches) * 100
|
|||
|
|
|
|||
|
|
## 相关接口
|
|||
|
|
|
|||
|
|
- [查询指定对象的同步进度](0010-query-progress.md) - 查询指定对象的同步进度
|
|||
|
|
- [同步单对象数据到本地数据库](0008-sync-single-object-data.md) - 触发指定对象的单次数据同步操作
|
|||
|
|
- [同步多个对象数据到本地数据库](0009-sync-multiple-object-data.md) - 触发多个对象的批量数据同步操作
|