f
This commit is contained in:
@@ -78,29 +78,43 @@ export const formatDate = dateStr => {
|
||||
return dateStr // 如果不是标准格式则返回原始字符串
|
||||
}
|
||||
|
||||
// 格式化金额显示(单位:万元)
|
||||
// 格式化金额显示(单位:元)
|
||||
export const formatLawsuitMoney = money => {
|
||||
if (!money) return '—'
|
||||
|
||||
const value = parseFloat(money)
|
||||
if (isNaN(value)) return '—'
|
||||
|
||||
// 超过1亿显示亿元
|
||||
if (value >= 10000) {
|
||||
return (
|
||||
(value / 10000).toLocaleString('zh-CN', {
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 2,
|
||||
}) + ' 亿元'
|
||||
)
|
||||
// 如果是字符串类型,检查是否已经包含单位
|
||||
if (typeof money === 'string') {
|
||||
// 匹配常见的金额单位:元、万元、亿元、万、亿等
|
||||
const unitPattern = /(元|万元|亿元|万|亿|千元|百元|角|分)\s*$/
|
||||
const unitMatch = money.match(unitPattern)
|
||||
|
||||
if (unitMatch) {
|
||||
// 已经包含单位,提取数字部分和单位
|
||||
const unit = unitMatch[1]
|
||||
// 提取数字部分(包括小数点和逗号分隔符)
|
||||
const numMatch = money.replace(unitPattern, '').trim().replace(/,/g, '')
|
||||
const value = parseFloat(numMatch)
|
||||
|
||||
if (isNaN(value)) return '—'
|
||||
|
||||
// 格式化数字并保留原有单位
|
||||
return (
|
||||
value.toLocaleString('zh-CN', {
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 2,
|
||||
}) + (unit.includes('元') ? ` ${unit}` : ` ${unit}元`)
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
// 否则显示万元
|
||||
// 没有单位,按数字处理并添加"元"
|
||||
const value = parseFloat(money)
|
||||
if (isNaN(value)) return '—'
|
||||
return (
|
||||
value.toLocaleString('zh-CN', {
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 2,
|
||||
}) + ' 万元'
|
||||
}) + ' 元'
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user