diff --git a/backend/src/services/invitationService.js b/backend/src/services/invitationService.js index b39940a..0b5b3d9 100644 --- a/backend/src/services/invitationService.js +++ b/backend/src/services/invitationService.js @@ -107,22 +107,24 @@ const getInvitationRecords = async (userId, options = {}) => { offset: parseInt(offset), }); - // Format records - const records = rows.map(invitation => ({ - id: invitation.id, - invitee: { - id: invitation.invitee.id, - uid: invitation.invitee.uid, - nickname: invitation.invitee.nickname, - avatar: invitation.invitee.avatar, - registeredAt: invitation.registeredAt, - }, - firstPaymentAt: invitation.firstPaymentAt, - firstPaymentAmount: invitation.firstPaymentAmount ? parseFloat(invitation.firstPaymentAmount).toFixed(2) : null, - rewardAmount: invitation.rewardAmount ? parseFloat(invitation.rewardAmount).toFixed(2) : null, - rewardStatus: invitation.rewardStatus, - createdAt: invitation.createdAt, - })); + // Format records - filter out records where invitee was deleted + const records = rows + .filter(invitation => invitation.invitee != null) + .map(invitation => ({ + id: invitation.id, + invitee: { + id: invitation.invitee.id, + uid: invitation.invitee.uid, + nickname: invitation.invitee.nickname, + avatar: invitation.invitee.avatar, + registeredAt: invitation.registeredAt, + }, + firstPaymentAt: invitation.firstPaymentAt, + firstPaymentAmount: invitation.firstPaymentAmount ? parseFloat(invitation.firstPaymentAmount).toFixed(2) : null, + rewardAmount: invitation.rewardAmount ? parseFloat(invitation.rewardAmount).toFixed(2) : null, + rewardStatus: invitation.rewardStatus, + createdAt: invitation.createdAt, + })); return { records, diff --git a/miniprogram/src/pages/me/invite-reward-page.vue b/miniprogram/src/pages/me/invite-reward-page.vue index 9c86708..1f3b4d1 100644 --- a/miniprogram/src/pages/me/invite-reward-page.vue +++ b/miniprogram/src/pages/me/invite-reward-page.vue @@ -455,8 +455,9 @@ try { // 使用邀请记录API,显示所有被邀请的用户(包括未支付的) const res = await appServer.GetInvitationRecords() - // 后端返回格式: { success: true, data: { records: [...] } } - if (res && res.success && res.data && res.data.records) { + console.log('GetInvitationRecords response:', res) + // 后端返回格式: { code: 0, message: "", data: { records: [...] } } + if (res && res.code === 0 && res.data && res.data.records) { this.inviteRecords = res.data.records.map(item => ({ username: item.invitee?.nickname || '-', uid: item.invitee?.uid || '-',