FormatMoneyW

This commit is contained in:
jiangyong 2026-06-07 20:22:26 +08:00
parent 121281fa77
commit 8670873f1e
1 changed files with 24 additions and 0 deletions

24
util.go
View File

@ -23,6 +23,30 @@ func FormatMoney(number int64) string {
return strconv.FormatInt(int64(num1), 10) return strconv.FormatInt(int64(num1), 10)
} }
// FormatMoney 格式化商品价格
func FormatMoneyW(number int64) string {
yuan := float64(number) / 100
// 大于等于10万时显示为万单位
if yuan >= 100000 {
wan := yuan / 10000
// 格式化两位小数然后去除末尾的0
str := fmt.Sprintf("%.2f", wan)
str = strings.TrimRight(str, "0")
str = strings.TrimRight(str, ".")
return str + "w"
}
// 小于10万时正常显示
yuanInt := number / 100
fen := number % 100
if fen == 0 {
return strconv.FormatInt(yuanInt, 10)
}
return fmt.Sprintf("%d.%02d", yuanInt, fen)
}
func FormatCNY(amountStr string) string { func FormatCNY(amountStr string) string {
amount, err := strconv.ParseFloat(amountStr, 64) amount, err := strconv.ParseFloat(amountStr, 64)
if err != nil { if err != nil {