|
|
|
@ -127,22 +127,6 @@ Page({ |
|
|
|
if (Array.isArray(goodsData.price)) { |
|
|
|
goodsData.price = goodsData.price[0]; |
|
|
|
} |
|
|
|
// 格式化价格,最多显示一位小数
|
|
|
|
goodsData.price = formatPrice(goodsData.price); |
|
|
|
} |
|
|
|
|
|
|
|
// 处理原始价格
|
|
|
|
if (goodsData.originalPrice) { |
|
|
|
// 如果原始价格是字符串且包含逗号,只取第一个价格
|
|
|
|
if (typeof goodsData.originalPrice === 'string' && goodsData.originalPrice.includes(',')) { |
|
|
|
goodsData.originalPrice = goodsData.originalPrice.split(',')[0].trim(); |
|
|
|
} |
|
|
|
// 如果原始价格是数组,只取第一个价格
|
|
|
|
if (Array.isArray(goodsData.originalPrice)) { |
|
|
|
goodsData.originalPrice = goodsData.originalPrice[0]; |
|
|
|
} |
|
|
|
// 格式化原始价格,最多显示一位小数
|
|
|
|
goodsData.originalPrice = formatPrice(goodsData.originalPrice); |
|
|
|
} |
|
|
|
|
|
|
|
// 处理当前商品的地区信息,只显示省份
|
|
|
|
@ -381,6 +365,28 @@ Page({ |
|
|
|
item.totalStock = displayStock; |
|
|
|
item.originalTotalStock = totalStock; |
|
|
|
|
|
|
|
// 处理地区信息,只显示省份
|
|
|
|
if (item.region) { |
|
|
|
// 提取省份信息
|
|
|
|
const provinceRegex = /^([^省]+省|[^自治区]+自治区|[^直辖市]+直辖市|[^特别行政区]+特别行政区)/; |
|
|
|
const match = item.region.match(provinceRegex); |
|
|
|
if (match) { |
|
|
|
item.region = match[1]; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 计算价格涨幅
|
|
|
|
if (goodsData.price) { |
|
|
|
const currentPrice = parseFloat(goodsData.price); |
|
|
|
const itemPrice = parseFloat(item.price); |
|
|
|
if (!isNaN(currentPrice) && !isNaN(itemPrice)) { |
|
|
|
const priceDiff = itemPrice - currentPrice; |
|
|
|
const pricePercent = ((priceDiff / currentPrice) * 100).toFixed(1); |
|
|
|
item.priceDiff = priceDiff; |
|
|
|
item.pricePercent = pricePercent; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return item; |
|
|
|
}); |
|
|
|
|
|
|
|
|