From cd6621d7330f0a20771e02f167f54b132c6a4516 Mon Sep 17 00:00:00 2001 From: wangjia <809946525@qq.com> Date: Fri, 3 Jul 2026 23:50:20 +0800 Subject: [PATCH] =?UTF-8?q?feat(client):=20=E8=B4=AD=E4=B9=B0=E5=8D=A1?= =?UTF-8?q?=E5=B9=B4=E4=BB=98=E6=98=8E=E7=A4=BA=E7=9C=81=202=20=E4=B8=AA?= =?UTF-8?q?=E6=9C=88=EF=BC=88tab=20=E6=A0=87=E6=B3=A8+=E5=88=92=E7=BA=BF?= =?UTF-8?q?=E5=8E=9F=E4=BB=B7+=E7=9C=81=E9=92=B1=E8=AF=B4=E6=98=8E?= =?UTF-8?q?=E8=A1=8C=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01JJ1g8XV1YhhmHRzhwWEW7o --- .../lib/screens/settings/purchase_card.dart | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/client/lib/screens/settings/purchase_card.dart b/client/lib/screens/settings/purchase_card.dart index 368f2d0..c3beb07 100644 --- a/client/lib/screens/settings/purchase_card.dart +++ b/client/lib/screens/settings/purchase_card.dart @@ -167,7 +167,7 @@ class _PurchaseCardState extends ConsumerState { ), if (!_isPromo) DsSeg( - items: const ['年付', '月付'], + items: const ['年付 · 省 2 个月', '月付'], index: _cycleIdx, onChanged: (i) => setState(() => _cycleIdx = i), ), @@ -252,6 +252,17 @@ class _PurchaseCardState extends ConsumerState { fontFamilyFallback: AppFonts.monoFallback)), const SizedBox(width: 8), ], + // 年付划线展示月付×12 原价,直观看到省 2 个月 + if (!_isPromo && _cycleIdx == 0) ...[ + Text('¥${_fmt(_group.monthly.price * 12)}', + style: TextStyle( + fontSize: AppDims.fsSm, + color: t.faint, + decoration: TextDecoration.lineThrough, + fontFamily: AppFonts.mono, + fontFamilyFallback: AppFonts.monoFallback)), + const SizedBox(width: 8), + ], Text('¥${_fmt(_plan.price)}', style: TextStyle( fontSize: 24, @@ -265,6 +276,13 @@ class _PurchaseCardState extends ConsumerState { fontFamilyFallback: AppFonts.monoFallback)), ], ), + if (!_isPromo && _cycleIdx == 0) ...[ + const SizedBox(height: 6), + Text( + '月付 ¥${_fmt(_group.monthly.price)} × 12 个月 = ¥${_fmt(_group.monthly.price * 12)},' + '年付立省 ¥${_fmt(_group.monthly.price * 12 - _group.annual.price)},相当于免费用 2 个月', + style: TextStyle(fontSize: AppDims.fsXs, color: t.success)), + ], const SizedBox(height: 6), Text('到期时间自动叠加,未到期续费不吃亏 · 支付宝支付', style: TextStyle(fontSize: AppDims.fsXs, color: t.faint)),