张善主

Merge remote-tracking branch 'origin/main'

@@ -8,11 +8,20 @@ export class NumberFormatterUtils { @@ -8,11 +8,20 @@ export class NumberFormatterUtils {
8 */ 8 */
9 static formatNumberWithWan(inputNumber: number | String): string { 9 static formatNumberWithWan(inputNumber: number | String): string {
10 const num = typeof inputNumber === 'number' ? inputNumber : Number(inputNumber); 10 const num = typeof inputNumber === 'number' ? inputNumber : Number(inputNumber);
11 - if (Number.isNaN(num) || num < 10000) { 11 + if (Number.isNaN(num)) {
  12 + return '';
  13 + } else if (num < 10000) {
12 return num.toString(); 14 return num.toString();
13 - } else { 15 + } else if (num < 100000000) {
  16 + // 处理 1万到1亿之间的数字,使用万作为单位,小数点后为0则不显示
14 const wanUnit = num / 10000; 17 const wanUnit = num / 10000;
15 - return `${wanUnit.toFixed(1)}万`; 18 + const formattedWan = wanUnit.toFixed(1);
  19 + return formattedWan.endsWith('.0') ? `${Math.floor(wanUnit)}万` : `${formattedWan}万`;
  20 + } else {
  21 + // 数字达到1亿及以上时,转换为亿并处理小数点后为0的情况
  22 + const yiUnit = num / 100000000;
  23 + const formattedYi = yiUnit.toFixed(1);
  24 + return formattedYi.endsWith('.0') ? `${formattedYi.slice(0, -2)}亿` : `${formattedYi}亿`;
16 } 25 }
17 } 26 }
18 } 27 }