# 公共技术基础前端即时接口交接

## 禅道归属

现在需要前端处理的内容统一填写到技术用户需求“七月迭代公共开发基础”下的研发需求：

`[FE][TECH] 七月迭代公共状态与异步任务交互`

不要把本次改动拆到全局审计或各业务需求下。支付方式与系统配置页面仍归 UR#48；全局审计中心页面归“全局多视角审计”技术用户需求。

## 现在需要调整的接口

### GET /api/admin/export-tasks

变更类型：兼容性新增字段，原字段不删除、不改名。

每条任务新增或统一以下字段：

| 字段 | 含义 | 前端用途 |
|---|---|---|
| `task_id` | 稳定任务标识 | 保存并用于恢复任务查询 |
| `total_count` | 总条数 | 展示整体进度 |
| `success_count` | 成功条数 | 展示成功结果 |
| `failed_count` | 失败条数 | 展示失败结果 |
| `error_code` | 稳定错误码 | 决定错误类型，不直接展示底层错误 |
| `error_summary` | 安全中文错误摘要 | 展示任务失败原因 |
| `updated_at` | 最近更新时间 | 判断任务是否仍有进展 |

### GET /api/admin/export-tasks/{id}

变更类型：兼容性新增字段，原字段不删除、不改名。

任务详情新增或统一 `task_id`、`total_count`、`success_count`、`failed_count`、`error_code`、`error_summary`、`updated_at`，字段语义与列表一致。

## 页面与业务逻辑调整

- 所有异步任务统一使用五态：`1=待处理、2=处理中、3=已完成、4=已失败、5=已取消`。
- “部分成功”不是新的状态。只要任务执行结束，状态就是已完成，页面通过总数、成功数、失败数表达部分成功。
- 创建任务成功后保存 `task_id`；刷新页面或重新进入页面时查询原任务，不得再次创建任务。
- 待处理和处理中按 2 秒、3 秒、5 秒递增轮询，之后最长保持 10 秒；进入终态立即停止。
- 页面不可见时暂停轮询，恢复可见后立即刷新一次。
- 403 显示无权限且不自动重试；瞬时失败保留已有数据和用户输入，并提供明确重试入口。
- 任务失败优先展示 `error_summary`；不要把 `error_code` 或底层技术错误直接作为用户文案。

## 现在不需要调整的内容

`GET /api/admin/system-configs` 和 `PUT /api/admin/system-configs/{key}` 是超级管理员受控配置接口。业务模块注册正式 Key 后即可按 `control` 渲染并更新；全局 Audit Event 已取消，不再作为接口可用前置。是否建设独立系统配置页面仍由实际业务需求决定。

Outbox 监控和人工恢复也不在本次前端范围内；公共基础只提供后端运维接缝，未来如需运营页面必须另行评审。
