修复:业务收益详情继承广告收益筛选口径 #94

Merged
guke merged 1 commits from codex/user-draw-ecpm-scope into main 2026-07-28 17:58:05 +08:00
Member

修复

  • 点击广告收益页用户后,详情默认继承已执行查询的日期范围
  • 同步传递正式/测试环境、业务/全量代码位口径、领券/比价场景
  • 传递的是上一次成功查询的快照,避免用户改了筛选但尚未点“查询”时详情口径漂移
  • 文案明确 Draw eCPM 基于全部实际展示(含未发奖)

验证

  • 已重放到最新 main,无冲突
  • npm run build 通过(含 TypeScript 类型检查)

依赖/上线顺序

依赖 app-server 配套 PR 新增的 app_envrevenue_scopefeed_scene 查询参数;请先上线后端,再上线本 PR。

## 修复 - 点击广告收益页用户后,详情默认继承已执行查询的日期范围 - 同步传递正式/测试环境、业务/全量代码位口径、领券/比价场景 - 传递的是上一次成功查询的快照,避免用户改了筛选但尚未点“查询”时详情口径漂移 - 文案明确 Draw eCPM 基于全部实际展示(含未发奖) ## 验证 - 已重放到最新 `main`,无冲突 - `npm run build` 通过(含 TypeScript 类型检查) ## 依赖/上线顺序 依赖 app-server 配套 PR 新增的 `app_env`、`revenue_scope`、`feed_scene` 查询参数;请先上线后端,再上线本 PR。
linkeyu added 1 commit 2026-07-28 13:57:24 +08:00
Member

🤖 review-pr 深审结论

🟢 可合并 — 类型检查实跑通过、正确把报表已查询筛选透传进抽屉。置信度 0.9(隔离 worktree 实跑 tsc --noEmit 通过 + 契约核对 + 试合并)。

验证

  • npx tsc --noEmitexit 0(无类型错误;新 props 贯穿 UserAdRevenueDrawer → UserRewardPanel、types.ts 契约一致)。
  • 契约对齐:types.ts UserRewardStats.feed_avg_ecpm: number 与 server feed_avg_ecpm: float 一致(本 PR 仅改注释,无字段增删,不涉 #82 那种「共享类型加必填字段合并后炸」的破坏)。
  • main 试合并:Already up to date(无漂移);同仓仅另一个无关 PR #25(京东 CPS 大盘)。

正面

  • queriedDetailFilters 取「已查询」快照(非实时表单)传抽屉,语义对(继承报表查询口径)。
  • UserRewardPanelkey 含全部筛选 → 筛选变更强制重挂载,避免残留状态。

说明

  • 依赖 server #190 的新 query 参数才完整生效;新 admin + 老 server 时未知参数被忽略、退回旧口径(不崩)。建议与 #190 同发或 server 先。
  • 关联的 withdraws 抽屉口径变化见 #190 的 med 备注(那是 server 端共享端点影响,非本 PR)。
## 🤖 review-pr 深审结论 🟢 **可合并** — 类型检查实跑通过、正确把报表已查询筛选透传进抽屉。置信度 **0.9**(隔离 worktree 实跑 `tsc --noEmit` 通过 + 契约核对 + 试合并)。 **验证** - `npx tsc --noEmit` → **exit 0**(无类型错误;新 props 贯穿 UserAdRevenueDrawer → UserRewardPanel、types.ts 契约一致)。 - 契约对齐:`types.ts UserRewardStats.feed_avg_ecpm: number` 与 server `feed_avg_ecpm: float` 一致(本 PR 仅改注释,无字段增删,不涉 #82 那种「共享类型加必填字段合并后炸」的破坏)。 - 与 `main` 试合并:Already up to date(无漂移);同仓仅另一个无关 PR #25(京东 CPS 大盘)。 **正面** - `queriedDetailFilters` 取「已查询」快照(非实时表单)传抽屉,语义对(继承报表查询口径)。 - `UserRewardPanel` 的 `key` 含全部筛选 → 筛选变更强制重挂载,避免残留状态。 **说明** - 依赖 server #190 的新 query 参数才完整生效;新 admin + 老 server 时未知参数被忽略、退回旧口径(不崩)。建议与 #190 同发或 server 先。 - 关联的 withdraws 抽屉口径变化见 #190 的 med 备注(那是 server 端共享端点影响,非本 PR)。
Member

🤖 review-pr 深审结论

🟢 逻辑正确,已实跑验证(tsc --noEmit 0 error)。#190 为同一需求前后端。置信度 0.9。

正面

  • 新增 props(initialDateFrom/ToappEnvrevenueScopefeedScene)类型与后端 Query 校验一致;key 强制 remount 保证 initial* 在 useState 初值里正确重取;scene as ... 断言在运行时安全(Select 只产出 comparison/coupon/welfare/undefined);appEnv==='all' → undefined 处理正确。

需确认(med,主要在后端侧)

  • 🟡#190:user_reward_stats 为提现详情/广告详情共用。提现详情页UserRewardPanel 未传新 props(默认 revenue_scope=all),其信息流 feed_avg_ecpm 会随后端改动静默变为「全量展示均值」,且 withdraw 变体文案未同步。请确认是否有意。
## 🤖 review-pr 深审结论 **🟢 逻辑正确,已实跑验证(`tsc --noEmit` 0 error)。** 与 #190 为同一需求前后端。置信度 0.9。 ### 正面 - 新增 props(`initialDateFrom/To`、`appEnv`、`revenueScope`、`feedScene`)类型与后端 Query 校验一致;`key` 强制 remount 保证 `initial*` 在 useState 初值里正确重取;`scene as ...` 断言在运行时安全(Select 只产出 comparison/coupon/welfare/undefined);`appEnv==='all' → undefined` 处理正确。 ### 需确认(med,主要在后端侧) - 🟡 见 #190:`user_reward_stats` 为提现详情/广告详情共用。**提现详情页**的 `UserRewardPanel` 未传新 props(默认 `revenue_scope=all`),其信息流 `feed_avg_ecpm` 会随后端改动静默变为「全量展示均值」,且 withdraw 变体文案未同步。请确认是否有意。
guke merged commit a286f859ee into main 2026-07-28 17:58:05 +08:00
Sign in to join this conversation.
No Reviewers
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WonderableAI/shaguabijia-admin-web#94