১৪.৮ : পে লোন আর লোন লিস্ট ভিউ
class PayLoanView(LoginRequiredMixin, View):
def get(self, request, loan_id):
loan = get_object_or_404(Transaction, id=loan_id)
print(loan)
if loan.loan_approve:
user_account = loan.account
# Reduce the loan amount from the user's balance
# 5000, 500 + 5000 = 5500
# balance = 3000, loan = 5000
if loan.amount < user_account.balance:
user_account.balance -= loan.amount
loan.balance_after_transaction = user_account.balance
user_account.save()
loan.loan_approved = True
loan.transaction_type = LOAN_PAID
loan.save()
return redirect('transactions:loan_list')
else:
messages.error(
self.request,
f'Loan amount is greater than available balance'
)
return redirect('loan_list')
class LoanListView(LoginRequiredMixin,ListView):
model = Transaction
template_name = 'transactions/loan_request.html'
context_object_name = 'loans' # loan list ta ei loans context er moddhe thakbe
def get_queryset(self):
user_account = self.request.user.account
queryset = Transaction.objects.filter(account=user_account,transaction_type=3)
return querysetLast updated