feat(client/purchase): 全员优惠月付特殊卡片(¥6/$1,随渠道显价)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
wangjia
2026-07-12 19:34:07 +08:00
parent 7ac9fa40f0
commit 17d99acf62
10 changed files with 218 additions and 34 deletions
+3
View File
@@ -18,6 +18,7 @@ class PayCatalogItem {
required this.priceMinor,
required this.currency,
this.priceUsdtMicro = 0,
this.promo = false,
});
final String sku;
@@ -26,6 +27,7 @@ class PayCatalogItem {
final int priceMinor; // CNY 分(展示)
final String currency; // CNY
final int priceUsdtMicro; // USDT 微元(展示;各币种一口价)
final bool promo; // 全员可见的限时优惠档(如 pro_month_promo)
factory PayCatalogItem.fromJson(Map<String, dynamic> j) => PayCatalogItem(
sku: j['sku'] as String,
@@ -34,6 +36,7 @@ class PayCatalogItem {
priceMinor: (j['price_minor'] as num?)?.toInt() ?? 0,
currency: j['currency'] as String? ?? 'CNY',
priceUsdtMicro: (j['price_usdt_micro'] as num?)?.toInt() ?? 0,
promo: j['promo'] as bool? ?? false,
);
/// 约当月数(31→1 / 92→3 / 366→12),用于每月折算展示。