feat(coupon-data): 领券数据看板加成功率 + 按券成功率下钻表 #43

Merged
guke merged 4 commits from feat/coupon-success-rate into main 2026-07-09 17:31:54 +08:00
Member

概述

领券数据看板两项增强:新增成功率指标 + 按券下钻表,以及领券状态多选筛选。纯前端改动,仅涉及 src/app/(main)/coupon-data/page.tsx;配套后端接口见下方「后端依赖」。

1. 成功率指标 + 按券下钻表

  • 汇总卡新增:整单成功率点位成功率(合计),及 美团 / 淘宝 / 京东 三档分平台点位成功率卡;每项带 Tooltip 口径说明:
    • 整单成功率 = 一次领券勾选平台全部至少领到一张的场次 ÷ 领券发起数(基数含未完成/失败/中途退出)。
    • 点位成功率(合计)= 各平台成功点位数之和 ÷ 勾选点位数之和;注意与「数据大盘」券粒度的点位成功率口径不同
  • 点击任一分平台卡下钻展开「按券成功率」表(coupon_id 粒度:券名 / 尝试 / 成功 / 成功率,默认按成功率降序、可排序);再次点击或「收起」关闭。
  • 按券数据走独立端点 GET /admin/api/coupon-data/coupons,与主报表并行拉取,失败不影响主报表。
  • 页内类型 CouponDataSummary 增加 full_success_* / point_success_* / per_platform 字段;新增 CouponSlotRow / CouponSlotsOut

2. 领券状态多选筛选(默认全选)

  • 筛选卡新增状态多选(未完成 / 完成 / 失败 / 中途退出),默认全选 = 与现状口径一致,不改变既有统计。
  • status 数组用 paramsSerializer: { indexes: null } 序列化为 status=a&status=b,对齐 FastAPI list[str] Query。
  • 附带:记录表「时间」列位置调整(移到「发起平台」之后)。

后端依赖

  • 领券汇总接口返回上述成功率字段(full_success_* / point_success_* / per_platform)。
  • 新增 GET /admin/api/coupon-data/coupons(按券成功率,coupon_id 粒度)。
  • 领券报表接口支持 status 多值筛选。
  • 口径详见 app-server docs/guides/领券成功率指标-设计与埋点.md(§3/§12/§13)。
概述 领券数据看板两项增强:新增**成功率指标 + 按券下钻表**,以及**领券状态多选筛选**。纯前端改动,仅涉及 `src/app/(main)/coupon-data/page.tsx`;配套后端接口见下方「后端依赖」。 ## 1. 成功率指标 + 按券下钻表 - 汇总卡新增:**整单成功率**、**点位成功率(合计)**,及 **美团 / 淘宝 / 京东** 三档分平台点位成功率卡;每项带 `Tooltip` 口径说明: - 整单成功率 = 一次领券勾选平台全部至少领到一张的场次 ÷ 领券发起数(基数含未完成/失败/中途退出)。 - 点位成功率(合计)= 各平台成功点位数之和 ÷ 勾选点位数之和;**注意与「数据大盘」券粒度的点位成功率口径不同**。 - 点击任一分平台卡**下钻**展开「按券成功率」表(`coupon_id` 粒度:券名 / 尝试 / 成功 / 成功率,默认按成功率降序、可排序);再次点击或「收起」关闭。 - 按券数据走独立端点 `GET /admin/api/coupon-data/coupons`,与主报表并行拉取,失败不影响主报表。 - 页内类型 `CouponDataSummary` 增加 `full_success_*` / `point_success_*` / `per_platform` 字段;新增 `CouponSlotRow` / `CouponSlotsOut`。 ## 2. 领券状态多选筛选(默认全选) - 筛选卡新增状态多选(未完成 / 完成 / 失败 / 中途退出),**默认全选 = 与现状口径一致**,不改变既有统计。 - `status` 数组用 `paramsSerializer: { indexes: null }` 序列化为 `status=a&status=b`,对齐 FastAPI `list[str]` Query。 - 附带:记录表「时间」列位置调整(移到「发起平台」之后)。 --- ## 后端依赖 - 领券汇总接口返回上述成功率字段(`full_success_*` / `point_success_*` / `per_platform`)。 - 新增 `GET /admin/api/coupon-data/coupons`(按券成功率,`coupon_id` 粒度)。 - 领券报表接口支持 `status` 多值筛选。 - 口径详见 app-server `docs/guides/领券成功率指标-设计与埋点.md`(§3/§12/§13)。
guke added 4 commits 2026-07-09 16:34:22 +08:00
- 汇总卡:整单成功率、点位成功率(合计)+ 美团/淘宝/京东分平台(带口径 tooltip)
- 按券成功率表默认隐藏,点平台统计卡下钻展开该平台各券
- 复用 fmtPct/平台映射;调 /admin/api/coupon-data/coupons

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 筛选卡加状态多选(未完成/完成/失败/中途退出),默认全选=现状不改口径
- status 数组用 paramsSerializer indexes:null 序列化为 status=a&status=b(对齐 FastAPI list[str])

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
guke merged commit 26e468766b into main 2026-07-09 17:31:54 +08:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WonderableAI/shaguabijia-admin-web#43