ADMIN-INFO-004 P0 | ReadingEvent 重放 / 修复操作 【阻塞: API-ADMIN-INFO-004】 #5

Closed
opened 2026-06-07 12:10:51 +08:00 by wangdl · 2 comments
Owner

重放单条/批量重放 failed/按用户/按material/按时间范围重放/force reprocess。仅超管/运维,二次确认,写审计日志。不重复增加学习时长。

M-ADMIN-INFO 里程碑 issue。依赖 API-ADMIN-INFO-xxx 接口。

## 重放单条/批量重放 failed/按用户/按material/按时间范围重放/force reprocess。仅超管/运维,二次确认,写审计日志。不重复增加学习时长。 M-ADMIN-INFO 里程碑 issue。依赖 API-ADMIN-INFO-xxx 接口。
wangdl added this to the M-ADMIN-INFO:学习信息收集管理后台 milestone 2026-06-07 12:10:51 +08:00
wangdl changed title from ADMIN-INFO-004 P0 | ReadingEvent 重放 / 修复操作 to ADMIN-INFO-004 P0 | ReadingEvent 重放 / 修复操作 【阻塞: API-ADMIN-INFO-004】 2026-06-07 12:34:47 +08:00
Author
Owner

完成

Admin 前端页面已实现。详见 src/pages/learning/ + src/services/learningAdmin.ts + src/routes/index.tsx

## 完成 Admin 前端页面已实现。详见 `src/pages/learning/` + `src/services/learningAdmin.ts` + `src/routes/index.tsx`
wangdl modified the milestone from M-ADMIN-INFO:学习信息收集管理后台 to M-ADMIN-LEARNING-INFO-OPS:学习信息收集管理后台 2026-06-10 21:53:21 +08:00
wangdl reopened this issue 2026-06-10 21:53:21 +08:00
Author
Owner

开发完成评论

完成内容

  • 新建 ReplayPage.tsx
    • 单条重放:输入 eventId → 二次确认 Modal → POST /reading-events/:id/replay
    • 批量重放:Form 筛选(userId/materialId/eventType/时间范围)→ 二次确认 → POST /reading-events/replay-batch
    • 权限提示 Alert(仅超管/运维)
    • 操作结果展示(Descriptions: 成功/失败/计数)
    • loading/error 状态完整(useMutation)
  • API 服务扩展:replayEvent(id) + replayEventsBatch(params)

修改文件

  • src/pages/learning/ReplayPage.tsx:新建
  • src/services/learningAdmin.ts:+2 方法

代码证据

  • ReplayPage.tsx:35-43:单条重放二次确认 Modal
  • ReplayPage.tsx:46-58:批量重放参数提取 + 二次确认
  • ReplayPage.tsx:62-80:单条重放 Card(Input + Button + 结果)
  • ReplayPage.tsx:82-109:批量重放 Card(Form + RangePicker + Select)

测试情况

  • npx tsc --noEmit — 通过(0 errors)

验收标准逐项

  1. 单条重放 — eventId Input + replayEvent API
  2. 批量重放 — Form 筛选 + replayEventsBatch API
  3. 二次确认 — Modal.confirm 阻止误操作
  4. 权限限制 — Alert 提示仅超管/运维
  5. 不重复增加时长 — 提示说明 + API 侧保障

是否建议进入 Review

## 开发完成评论 ### 完成内容 - 新建 `ReplayPage.tsx`: - **单条重放**:输入 eventId → 二次确认 Modal → POST `/reading-events/:id/replay` - **批量重放**:Form 筛选(userId/materialId/eventType/时间范围)→ 二次确认 → POST `/reading-events/replay-batch` - 权限提示 Alert(仅超管/运维) - 操作结果展示(Descriptions: 成功/失败/计数) - loading/error 状态完整(useMutation) - API 服务扩展:`replayEvent(id)` + `replayEventsBatch(params)` ### 修改文件 - `src/pages/learning/ReplayPage.tsx`:新建 - `src/services/learningAdmin.ts`:+2 方法 ### 代码证据 - `ReplayPage.tsx:35-43`:单条重放二次确认 Modal - `ReplayPage.tsx:46-58`:批量重放参数提取 + 二次确认 - `ReplayPage.tsx:62-80`:单条重放 Card(Input + Button + 结果) - `ReplayPage.tsx:82-109`:批量重放 Card(Form + RangePicker + Select) ### 测试情况 - `npx tsc --noEmit` — 通过(0 errors) ### 验收标准逐项 1. 单条重放 — ✅ eventId Input + replayEvent API 2. 批量重放 — ✅ Form 筛选 + replayEventsBatch API 3. 二次确认 — ✅ Modal.confirm 阻止误操作 4. 权限限制 — ✅ Alert 提示仅超管/运维 5. 不重复增加时长 — ✅ 提示说明 + API 侧保障 ### 是否建议进入 Review - 是
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wangdl/admin-projects#5
No description provided.