datai/docs/archive/api-docs/integration/DataiIntegrationBatchController/0001-retry-failed-batch.md

3.1 KiB
Raw Blame History

接口文档:重试失败的批次

接口信息

  • 接口名称: 重试失败的批次
  • 接口路径: /integration/batch/{id}/retry
  • 请求方法: POST
  • 模块归属: integration
  • 版本号: v1.0
  • 创建日期: 2026-01-09
  • 最后更新: 2026-01-09

功能描述

重试执行失败的数据同步批次,将失败的批次重新加入执行队列。

请求参数

路径参数

参数名 类型 必填 描述 示例
id Integer 批次ID 123

响应数据

成功响应

HTTP 状态码: 200 OK

{
  "code": 200,
  "message": "操作成功",
  "data": 1
}
字段名 类型 描述 示例
code Integer 响应状态码 200
message String 响应消息 操作成功
data Integer 操作结果1表示成功 1

失败响应

HTTP 状态码: 400 Bad Request

{
  "code": 400,
  "message": "批次不存在或状态不允许重试",
  "data": null
}
错误码 错误信息 描述
400 批次不存在或状态不允许重试 当批次ID不存在或批次状态不是失败状态时
403 无权限执行此操作 当用户没有integration:batch:retry权限时

接口示例

请求示例

curl -X POST "http://localhost:8080/integration/batch/123/retry" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer [token]"

响应示例

成功:

{
  "code": 200,
  "message": "操作成功",
  "data": 1
}

失败:

{
  "code": 400,
  "message": "批次不存在或状态不允许重试",
  "data": null
}

错误处理

  • 400 Bad Request: 批次不存在或状态不允许重试
  • 403 Forbidden: 用户无权限执行此操作
  • 500 Internal Server Error: 服务器内部错误

注意事项

  • 仅当批次状态为失败时才能重试
  • 重试操作可能会触发数据同步,请注意系统负载
  • 重试后批次状态会变为执行中

相关接口

实现细节

  • 接口通过调用dataiIntegrationBatchService.retryFailed(id)方法实现重试逻辑
  • 服务层会检查批次状态,仅允许失败状态的批次重试
  • 重试操作会重置批次状态并重新触发同步流程

测试信息

测试环境

  • 环境: 开发环境
  • 版本: v1.0

测试用例

测试场景 输入参数 预期结果 实际结果 状态
重试失败批次 id=123失败状态 操作成功返回1 操作成功返回1 通过
重试非失败批次 id=124执行中状态 操作失败,返回错误信息 操作失败,返回错误信息 通过
重试不存在批次 id=999不存在 操作失败,返回错误信息 操作失败,返回错误信息 通过