diff --git a/lib/core/translations/language/en_us.dart b/lib/core/translations/language/en_us.dart index e79a63bf6..6bc80e0ea 100644 --- a/lib/core/translations/language/en_us.dart +++ b/lib/core/translations/language/en_us.dart @@ -716,6 +716,7 @@ const Map enUS = { "firstBindRewardDesc": "You've received binding rewards.", "vipLevelLabel": "VIP Level:", "expiryLabel": "Expiration:", + "notActivated": "Not activated", "aiChatCreditsLabel": "AI Chat Credits:", "translationCreditsLabel": "Translation Credits:", "meetingCreditsLabel": "Meeting Credits:", diff --git a/lib/core/translations/language/zh_cn.dart b/lib/core/translations/language/zh_cn.dart index 4922d7aaf..9a5f062e2 100644 --- a/lib/core/translations/language/zh_cn.dart +++ b/lib/core/translations/language/zh_cn.dart @@ -698,7 +698,8 @@ const Map zhCN = { "firstBindRewardTitle": "Welcome Reward", "firstBindRewardDesc": "You've received binding rewards.", "vipLevelLabel": "VIP Level:", - "expiryLabel": "Expiration:", + "expiryLabel": "到期时间:", + "notActivated": "未激活", "aiChatCreditsLabel": "AI Chat Credits:", "translationCreditsLabel": "Translation Credits:", "meetingCreditsLabel": "Meeting Credits:", diff --git a/lib/modules/goods/views/goodsvip_view.dart b/lib/modules/goods/views/goodsvip_view.dart index 737431dba..bedbd4cbf 100644 --- a/lib/modules/goods/views/goodsvip_view.dart +++ b/lib/modules/goods/views/goodsvip_view.dart @@ -34,6 +34,7 @@ class GoodsvipView extends GetView { centerTitle: true, ), body: Obx(() { + final userTick = User.refreshTick.value; Widget content; if (controller.loading.value) { content = const Center(child: CircularProgressIndicator()); @@ -44,12 +45,7 @@ class GoodsvipView extends GetView { for (final g in controller.items) { grouped.putIfAbsent(g.usagetype, () => []).add(g); } - final order = [ - UsageType.Vip, - UsageType.Translation, - UsageType.Meet, - UsageType.AI, - ]; + final order = [UsageType.Vip, UsageType.Translation, UsageType.Meet]; final children = []; children.add(_buildFeaturesSection(isDarkMode)); children.add(SizedBox(height: 16.h)); @@ -70,6 +66,7 @@ class GoodsvipView extends GetView { children.add(_buildFooterSection(isDarkMode)); content = ListView( + key: ValueKey(userTick), padding: EdgeInsets.all(16.w), children: children, ); @@ -282,7 +279,9 @@ class GoodsvipView extends GetView { : DateTime.fromMillisecondsSinceEpoch(vipexptime * 1000); } // titleStr = 'Vip $viplv'; - vipSubtitle = expiry != null ? _fmtDate(expiry) : '未激活'; + vipSubtitle = expiry != null + ? '${'expiryLabel'.tr}${_fmtDate(expiry)}' + : 'notActivated'.tr; } return Container( padding: EdgeInsets.all(16.w),