chore: add wallet deduct notification

This commit is contained in:
Mahyargdz
2025-05-11 16:06:14 +03:30
parent e7c3d8105f
commit e8402b673f
2 changed files with 19 additions and 0 deletions
@@ -549,6 +549,7 @@ export class InvoicesService {
//
await queryRunner.manager.save(UserSubscription, userSubscription);
await this.walletsService.createSubscriptionTransaction(invoice.totalPrice, userWallet.id, queryRunner);
await this.addNotifyForWalletDeduction(invoice, user, userWallet, WalletMessage.SUBSCRIPTION_WALLET_TRANSFER);
await this.addNotifyAdminForSubscriptionPaymentToQueue(invoice);
//
} else if (invoice.items[0]?.supportPlan) {
@@ -565,8 +566,11 @@ export class InvoicesService {
await queryRunner.manager.save(UserSupportPlan, userSupportPlan);
await this.walletsService.createSupportPlanTransaction(invoice.totalPrice, userWallet.id, queryRunner);
await this.addNotifyForWalletDeduction(invoice, user, userWallet, WalletMessage.SUPPORT_PLAN_WALLET_TRANSFER);
//
} else {
await this.walletsService.createInvoiceTransaction(invoice.totalPrice, userWallet.id, queryRunner);
await this.addNotifyForWalletDeduction(invoice, user, userWallet, WalletMessage.INVOICE_WALLET_TRANSFER);
}
invoice.status = InvoiceStatus.PAID;
invoice.paidAt = dayjs().toDate();
@@ -809,4 +813,16 @@ export class InvoicesService {
},
);
}
//*********************************** */
private async addNotifyForWalletDeduction(invoice: Invoice, user: User, userWallet: Wallet, reason: string) {
await this.notificationQueue.addWalletDeductionNotification(user.id, {
amount: invoice.totalPrice.toNumber(),
balance: userWallet.balance.toNumber(),
reason,
date: dayjs().toDate(),
userPhone: user.phone,
userEmail: user.email,
});
}
}