领域层:新增会员计划目录种子与档位解析
- membership_catalog.rs:runtime_profile_membership_plan_catalog 一行一档(Starter ¥39/400/¥390、Plus ¥99/1150/¥990、Pro ¥299/3650/¥2990、Max ¥699/8650/¥6990、Normal 全 0 且不可购买) - 新增 RuntimeProfileMembershipPlanCatalogRow 与 RuntimeProfileMembershipPlanSnapshot - resolve_runtime_profile_membership_plan_snapshot 按所选周期取月价 / 年价;rank 与可购买判定只来自目录 - 单测覆盖档位覆盖与排序、价格与点数、年价独立存储、Normal 语义、周期取价 - 设计文档同步登记目录纯函数入口 Co-authored-by: Junie <junie@jetbrains.com>
This commit is contained in:
@@ -247,6 +247,16 @@ pub struct RuntimeProfileMembershipUpgradeQuote {
|
||||
}
|
||||
```
|
||||
|
||||
目录纯函数(`membership_catalog`,无 IO):
|
||||
|
||||
- `runtime_profile_membership_plan_catalog()`:后台 `profile_membership_plan` 表的种子真相源,
|
||||
一行一档(`title` / `rank` / `month_price_cents` / `year_price_cents` / `period_points` /
|
||||
`model_access` / `concurrent_job_limit` / `sort_order` / `enabled`)。
|
||||
- `resolve_runtime_profile_membership_plan_snapshot(plan, cycle_kind)`:
|
||||
「档位 + 周期 → 可下单套餐」的唯一解析入口,`price_cents` 取所选周期的价格字段。
|
||||
- `runtime_profile_membership_plan_rank(plan)` / `is_runtime_profile_membership_plan_purchasable(plan)`:
|
||||
升级比较与可购买判定的唯一入口(`Normal` 与下架档位都不可购买)。
|
||||
|
||||
`RuntimeProfileMembershipSnapshot` / `RuntimeProfileMembershipRecord`:
|
||||
`tier` → `plan`(枚举),删 `cycle_period_days`,新增 `cycle_index` / `cycle_count` / `cycle_kind`。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user