fix:积分显示问题

This commit is contained in:
tsui110 2026-01-03 22:41:14 +08:00
parent 2c77f124c1
commit e745d172ff
4 changed files with 7 additions and 7 deletions

View File

@ -8,7 +8,7 @@
<view class="title">{{ detail.title || detail.name || '-' }}</view>
<view class="price-row">
<view class="points-wrap">
<text class="points-val">{{ (detail.points_required ? Math.floor(detail.points_required / 100) : 0) || (detail.price ? Math.floor(detail.price / 100) : 0) }}</text>
<text class="points-val">{{ (detail.points_required ? (detail.points_required / 100).toFixed(1) : '0.0') || (detail.price ? (detail.price / 100).toFixed(1) : '0.0') }}</text>
<text class="points-unit">积分</text>
</view>
</view>
@ -74,7 +74,7 @@ async function onRedeem() {
return
}
const points = (detail.value.points_required ? Math.floor(detail.value.points_required / 100) : 0) || (detail.value.price ? Math.floor(detail.value.price / 100) : 0)
const points = (detail.value.points_required ? (detail.value.points_required / 100).toFixed(1) : '0.0') || (detail.value.price ? (detail.value.price / 100).toFixed(1) : '0.0')
uni.showModal({
title: '确认兑换',
content: `是否消耗 ${points} 积分兑换 ${p.title || p.name}`,

View File

@ -67,9 +67,9 @@ const pageSize = ref(20)
const hasMore = ref(true)
function formatPoints(v) {
const n = Number(v) || 0
if (n === 0) return '0'
if (n === 0) return '0.0'
const f = n / 100
return Number.isInteger(f) ? String(f) : f.toFixed(2).replace(/\.?0+$/, '')
return f.toFixed(1)
}
function formatTime(t) {

View File

@ -738,9 +738,9 @@ export default {
},
formatPoints(v) {
const n = Number(v) || 0
if (n === 0) return '0'
if (n === 0) return '0.0'
const f = n / 100
return Number.isInteger(f) ? String(f) : f.toFixed(2).replace(/\.?0+$/, '')
return f.toFixed(1)
},
copyInviteCode() {
const code = this.getInviteCode()

View File

@ -246,7 +246,7 @@ function normalizeItems(list, kind) {
image: cleanUrl(i.main_image || i.image || ''),
title: i.name || i.title || '',
price: i.price || i.discount_value || 0,
points: i.points_required ? Math.floor(i.points_required / 100) : (i.price ? Math.floor(i.price / 100) : (i.discount_value ? Math.floor(i.discount_value / 100) : 0)),
points: i.points_required ? (i.points_required / 100).toFixed(1) : (i.price ? (i.price / 100).toFixed(1) : (i.discount_value ? (i.discount_value / 100).toFixed(1) : '0.0')),
stock: i.in_stock ? 99 : 0, // Simplified stock check if returned as bool
discount_value: i.discount_value || 0,
min_spend: i.min_spend || 0,