import 'package:intl/intl.dart';
import '../navigation/host_app_channel.dart';

/// 显示用金额格式化：千分位分隔 + ERP 动态小数位（无 ¥ 前缀）。
/// 示例: 1234567.89 → "1,234,567.89"（poiAmt=2）
String formatAmount(num amount) {
  if (amount.isNaN || amount.isInfinite) return '0';
  final digits = HostAppChannel.poiAmt;
  final formatter = NumberFormat('#,##0.${'0' * digits}', 'en_US');
  return formatter.format(amount);
}

/// 输入框用金额格式化：仅保留 ERP 动态小数位，无千分位分隔。
/// 示例: 1234567.89 → "1234567.89"（poiAmt=2）
String formatAmountNumeric(num amount) {
  if (amount.isNaN || amount.isInfinite) return '0';
  return amount.toStringAsFixed(HostAppChannel.poiAmt);
}
