# 交互设计 · 支付记录 > 订阅权益与充值入账的登记面(管理入口名「支付记录」)+ 系统核对提示——「只有作者知道」的信息的唯一录入处。物理上分 `subscriptions` / `topups` 两表(`payments建模评估.md` 方案 B),界面仍作**一个菜单项**,两 Tab 各登记各的。 | 项目 | 内容 | |------|------| | 状态 | 定稿(2026-10-12,作者认可实现) | | 关联 | 《交互设计-总览与共性》· `subscriptions表字段设计.md` · `topups表字段设计.md` · R7/R8 | | 数据 | `subscriptions` + `topups` · 日志观测的订阅 ID(核对提示) | --- ## 1. 页结构:两 Tab 菜单仍叫「支付记录」;页内 Tab: | Tab | 清单 | 登记 | |-----|------|------| | **订阅** | 订阅权益表 | 登记订阅 | | **充值** | 充值入账表 | 登记充值 | 筛选随 Tab: | Tab | 筛选 | URL | |-----|------|-----| | 订阅 | 订阅 ID / 期间与所选窗口重叠(拆表后) | `tab=subs` | | 充值 | **仅类型**(付费时间筛选已撤——`paid_at` 语义待拆表钉死) | `tab=topups` · `kind` | 当前实现(拆表前):仅「类型」筛选;补录审计可看「登记」列(`created_at`)。 ## 2. 订阅清单列 | 列 | 内容 | |----|------| | 订阅 ID | `subscription_id` | | 期间 | `[period_start, period_end)`,未结束「进行中」 | | 额度 | quota + $ 双单位 | | 付款 | `paid_amount` / `paid_at`(可空显示「—」) | | 备注 | `remark` | | 登记 | `created_at` | | 操作 | 编辑 / 删除 | ## 3. 充值清单列(对齐上游充值单) | 列 | 内容 | |----|------| | 时间 | `paid_at`(= 上游 `complete_time`,平台展示时刻;倒序) | | 充值金额 | `amount`(平台计费侧充值额,不标币种) | | 实付金额 | `money`(如 `2.04`,纯数字) | | 交易号 / 渠道 | `trade_no` · `payment_method` / `payment_provider` | | 派生额度 | `amount × qpu` + $(展示,不入库) | | 备注 / 登记 | `remark` · `created_at` | | 账本域 | `billing_domain`(可空;列表可按域筛,含「未标注」) | | 操作 | 编辑 / 删除 | ## 4. 登记表单(分 Tab,不再 `kind` 切换) **订阅**:订阅 ID · 期间起止(结束可空)· 额度(quota / 美元双输入)· 付款金额(可空)· 付款时间(可空)· 账本域(可空,已有值联想)· 备注 · **「从平台选用」**(辅助登录 → 订阅列表) **充值**:时间 `paid_at`(必填)· `amount`(必填)· `money`(必填)· 交易号 / 渠道(可空)· 账本域(可空,已有值联想)· 备注 · **「从平台选用」**(辅助登录 → 充值单分页列表);**无「换得额度」输入框**(派生) ### 4.1 选用弹层(订阅 / 充值同规则) 与 `platform-subscription-picker` 同壳:账号密码 → 代拉 → 选用。**已登记灰显**两套一致: | 实体 | 去重键 | 已登记表现 | |------|--------|------------| | 订阅 | `subscription_id` | 灰 +「已登记」,不可选用 | | 充值 | `upstream_id` | 灰 +「已登记」,不可选用 | **充值分页**(上游仅 `p` / `page_size`,无时间参数): | 行为 | 策略 | |------|------| | 列表 | 当前页(`page_size=10`) | | 翻页 | 传统分页:共 N 条 · 上一页 / 页码 / 下一页 | | 范围 | 可翻至尽头;**不做时间筛选** | | 401 | 重登;token 仅 sessionStorage | 订阅列表为全量一次拉取(`all_subscriptions`),无分页问题。 - 金额脚注:「金额数值——币种由你们约定,系统不预设」 - 订阅额度双输入:原始 quota 或美元(按 `qpu/latest` 预览),落库恒 quota - 编辑 / 删除有确认;改错即修 ## 5. 核对提示(只对订阅 Tab) | 提示 | 触发 | 文案 | |------|------|------| | 未对应登记 | 观测到某 `subscription_id` 有消耗、`subscriptions` 无此行 | 「观测到订阅 #N 有消耗,但尚无对应登记——请核对补录」 | | 正常 | 均有登记 | 不显示 | - 只提示不回填;`subscriptions` + `topups` 皆空时**自动静默**(纯用量模式)