datai-vue/doc/salesforce/integration/0002-log-statistics.md
Kris 1177dbde35 feat: 添加元数据变更中心和实时同步统计页面
- 新增元数据变更中心页面 (metadatachange/index.vue)
  - 集成统计卡片显示变更数据
  - 支持按变更类型、操作类型、同步状态分组统计
  - 支持趋势统计图表展示
  - 优化查询条件布局,移至页面顶部

- 新增实时同步统计页面 (statistics/realtime/index.vue)
  - 显示实时同步服务状态和控制按钮
  - 统计启用实时同步的对象数量
  - 自动刷新统计数据(30秒间隔)

- 优化数据同步页面 (datasync/index.vue)
  - 修正字段映射以匹配API响应
  - 更新统计卡片显示实际数据

- 优化同步日志统计页面 (statistics/synclog/index.vue)
  - 更新表格列以匹配API响应结构
  - 更新查询参数和映射函数

- 更新导航栏菜单 (Navbar/index.vue)
  - 添加元数据变更中心菜单项

- 新增API接口 (realtimeservice.js)
  - 添加getStatistics函数获取实时同步统计数据

- 新增接口文档
  - DataiIntegrationRealtimeSyncController 接口文档
  - DataiIntegrationRealtimeSyncLogController 接口文档
2026-01-13 13:50:07 +08:00

4.4 KiB
Raw Blame History

接口文档

接口信息

  • 接口名称: 获取日志统计信息
  • 接口路径: /integration/synclog/statistics
  • 请求方法: GET
  • 模块归属: 数据同步日志
  • 版本号: v1.0
  • 创建日期: 2026-01-09
  • 最后更新: 2026-01-09

功能描述

获取数据同步日志的统计信息支持根据批处理ID、对象API名称、操作类型、操作状态等条件进行筛选统计。

请求参数

路径参数

查询参数

参数名 类型 必填 描述 示例 默认值
batchId Long 批处理ID 1
objectApi String 对象API名称 Account
operationType String 操作类型 insert
operationStatus String 操作状态 success
deptId Long 部门ID 100
beginTime String 开始时间 2026-01-01
endTime String 结束时间 2026-01-31

请求体

响应数据

成功响应

HTTP 状态码: 200 OK

{
  "code": 200,
  "message": "操作成功",
  "data": {
    "totalCount": 1000,
    "successCount": 950,
    "failureCount": 50,
    "successRate": "95%",
    "operationTypeStats": {
      "insert": 500,
      "update": 300,
      "delete": 200
    },
    "objectApiStats": {
      "Account": 400,
      "Contact": 300,
      "Opportunity": 300
    },
    "timeRangeStats": {
      "2026-01-01": 100,
      "2026-01-02": 150,
      "2026-01-03": 200
    }
  }
}
字段名 类型 描述 示例
totalCount Long 总操作次数 1000
successCount Long 成功操作次数 950
failureCount Long 失败操作次数 50
successRate String 成功率 95%
operationTypeStats Object 操作类型统计 {"insert": 500, "update": 300, "delete": 200}
objectApiStats Object 对象API统计 {"Account": 400, "Contact": 300, "Opportunity": 300}
timeRangeStats Object 时间范围统计 {"2026-01-01": 100, "2026-01-02": 150, "2026-01-03": 200}

失败响应

HTTP 状态码: 500 Internal Server Error

{
  "code": 500,
  "message": "获取统计信息失败: 系统异常",
  "data": null
}

接口示例

请求示例

curl -X GET "http://localhost:8080/integration/synclog/statistics?objectApi=Account&beginTime=2026-01-01&endTime=2026-01-31" \
  -H "Authorization: Bearer [token]"

响应示例

成功:

{
  "code": 200,
  "message": "操作成功",
  "data": {
    "totalCount": 500,
    "successCount": 480,
    "failureCount": 20,
    "successRate": "96%",
    "operationTypeStats": {
      "insert": 200,
      "update": 250,
      "delete": 50
    },
    "objectApiStats": {
      "Account": 500
    },
    "timeRangeStats": {
      "2026-01-01": 50,
      "2026-01-15": 200,
      "2026-01-31": 250
    }
  }
}

失败:

{
  "code": 500,
  "message": "获取统计信息失败: 系统异常",
  "data": null
}

错误处理

  • 统计过程中发生异常时返回500错误
  • 参数错误时返回400错误
  • 权限不足时返回403错误

注意事项

  • 该接口需要数据同步日志的查看权限
  • 统计信息可能会有一定的延迟,取决于数据量的大小
  • 当查询时间范围较大时,可能会耗时较长

相关接口

实现细节

  • 构建查询参数,支持多条件筛选
  • 调用service层的getLogStatistics方法获取统计信息
  • 处理统计过程中的异常情况
  • 返回统计结果

测试信息

测试环境

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

测试用例

测试场景 输入参数 预期结果 实际结果 状态
获取全部统计信息 返回统计信息 返回统计信息 通过
按对象筛选统计 objectApi=Account 返回Account对象统计 返回Account对象统计 通过
按时间范围筛选 beginTime=2026-01-01&endTime=2026-01-31 返回时间范围内统计 返回时间范围内统计 通过
按操作状态筛选 operationStatus=success 返回成功操作统计 返回成功操作统计 通过