From 3e20dd845a7e3896772fad8d4c904482e608796b Mon Sep 17 00:00:00 2001 From: Zuncle <34310384@qq.com> Date: Wed, 18 Mar 2026 21:58:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=89=8D=E7=AB=AF=E8=BF=87=E6=BB=A4=20s?= =?UTF-8?q?ub=5Fstatus=3Dexpired=20=E7=9A=84=E4=BC=98=E6=83=A0=E5=88=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit yifanshang/wuxianshang/duiduipeng 三个活动页面的 fetchCoupons 在赋值前过滤掉已过期的券,作为后端的防御层 --- pages-activity/activity/duiduipeng/index.vue | 1 + pages-activity/activity/wuxianshang/index.vue | 1 + pages-activity/activity/yifanshang/index.vue | 4 +--- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pages-activity/activity/duiduipeng/index.vue b/pages-activity/activity/duiduipeng/index.vue index c2832f6..0c0cfa7 100755 --- a/pages-activity/activity/duiduipeng/index.vue +++ b/pages-activity/activity/duiduipeng/index.vue @@ -1502,6 +1502,7 @@ async function fetchCoupons() { if (Array.isArray(res)) list = res else if (res && Array.isArray(res.list)) list = res.list else if (res && Array.isArray(res.data)) list = res.data + list = list.filter(i => i.sub_status !== 'expired') coupons.value = list.map((i, idx) => { const cents = (i.remaining !== undefined && i.remaining !== null) ? Number(i.remaining) : Number(i.amount ?? i.value ?? 0) const yuan = isNaN(cents) ? 0 : (cents / 100) diff --git a/pages-activity/activity/wuxianshang/index.vue b/pages-activity/activity/wuxianshang/index.vue index fe35047..ca21f4b 100755 --- a/pages-activity/activity/wuxianshang/index.vue +++ b/pages-activity/activity/wuxianshang/index.vue @@ -307,6 +307,7 @@ async function fetchCoupons() { try { const res = await getUserCoupons(user_id, 0, 1, 100) let list = Array.isArray(res) ? res : (res?.list || res?.data || []) + list = list.filter(i => i.sub_status !== 'expired') coupons.value = list.map((i, idx) => { const amountCents = i.remaining ?? i.amount ?? i.value ?? 0 const amt = isNaN(amountCents) ? 0 : (Number(amountCents) / 100) diff --git a/pages-activity/activity/yifanshang/index.vue b/pages-activity/activity/yifanshang/index.vue index 28d214a..ae77436 100755 --- a/pages-activity/activity/yifanshang/index.vue +++ b/pages-activity/activity/yifanshang/index.vue @@ -624,9 +624,7 @@ async function fetchCoupons() { // 获取未使用(status=1)的优惠券 const res = await getUserCoupons(userId, 1, 1, 100) if (res && Array.isArray(res.list)) { - // 简单过滤:只显示未过期的(虽然接口可能已过滤) - // TODO: 如果需要根据活动ID过滤适用券,需后端支持或在此处根据规则过滤 - paymentCoupons.value = res.list + paymentCoupons.value = res.list.filter(c => c.sub_status !== 'expired') } else { paymentCoupons.value = [] }