From 07f7f26948126832a5a201cde7508c5f15d61021 Mon Sep 17 00:00:00 2001 From: hailin Date: Fri, 13 Feb 2026 07:47:05 -0800 Subject: [PATCH] =?UTF-8?q?feat(mining-app):=20=E5=B7=B2=E9=94=80=E6=AF=81?= =?UTF-8?q?=E9=87=8F=E5=8E=BB=E6=8E=89=E5=B0=8F=E6=95=B0=E4=BD=8D=E6=98=BE?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - format_utils.dart: 新增 formatIntWithCommas(),逗号千位分隔但不保留小数 - trading_page.dart: 已销毁量改用 formatIntWithCommas() Co-Authored-By: Claude Opus 4.6 --- frontend/mining-app/lib/core/utils/format_utils.dart | 12 ++++++++++++ .../lib/presentation/pages/trading/trading_page.dart | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/frontend/mining-app/lib/core/utils/format_utils.dart b/frontend/mining-app/lib/core/utils/format_utils.dart index ed8d735d..9080844d 100644 --- a/frontend/mining-app/lib/core/utils/format_utils.dart +++ b/frontend/mining-app/lib/core/utils/format_utils.dart @@ -44,6 +44,18 @@ String formatWithCommas(String? value) { } } +/// 原始整数 + 逗号千位分隔(不保留小数) +String formatIntWithCommas(String? value) { + if (value == null || value.isEmpty) return '0'; + try { + final num = double.parse(value); + final formatter = NumberFormat('#,##0', 'zh_CN'); + return formatter.format(num); + } catch (e) { + return '0'; + } +} + String formatPercent(String? value, [int precision = 2]) { if (value == null || value.isEmpty) return '0%'; try { diff --git a/frontend/mining-app/lib/presentation/pages/trading/trading_page.dart b/frontend/mining-app/lib/presentation/pages/trading/trading_page.dart index c990f1a7..fc20c0ad 100644 --- a/frontend/mining-app/lib/presentation/pages/trading/trading_page.dart +++ b/frontend/mining-app/lib/presentation/pages/trading/trading_page.dart @@ -386,7 +386,7 @@ class _TradingPageState extends ConsumerState { const SizedBox(width: 16), _buildMarketDataItem( '已销毁量', - market != null ? formatWithCommas(market.blackHoleAmount) : null, + market != null ? formatIntWithCommas(market.blackHoleAmount) : null, _red, isLoading, ),