enable wallet api

This commit is contained in:
Sayyid Hamid Mahdavi 2025-03-04 13:44:51 +03:30
parent 817f215b5a
commit 531ef4cfc7

View file

@ -14,7 +14,7 @@ from apps.gooyal_oauth2.rest_framework import IsAuthenticatedOrTokenMatchesOASRe
from apps.wallet.models import Transaction from apps.wallet.models import Transaction
from apps.wallet.serializers import TransactionSerializer, DepositSerializer, WithdrawSerializer, \ from apps.wallet.serializers import TransactionSerializer, DepositSerializer, WithdrawSerializer, \
MyWalletSerializer MyWalletSerializer
from ..constans import StateChoices from ..constans import StateChoices, TypeChoices
from ..forms import TransactionActionForm from ..forms import TransactionActionForm
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
@ -41,7 +41,7 @@ class MyWalletBalanceView(generics.RetrieveAPIView):
# this is application create invoice view # this is application create invoice view
class TransactionList(generics.ListCreateAPIView): class TransactionList(generics.ListAPIView):
''' '''
GET: API for getting list of transactions for authenticated user GET: API for getting list of transactions for authenticated user
POST: API for creating transaction for transferring funds from authenticated user to application owner. (deprecated) POST: API for creating transaction for transferring funds from authenticated user to application owner. (deprecated)
@ -58,12 +58,14 @@ class TransactionList(generics.ListCreateAPIView):
def get_queryset(self): def get_queryset(self):
user = self.request.user user = self.request.user
return Transaction.objects.filter(Q(payee=user) | Q(payer=user)).all() return Transaction.objects.filter(Q(payee_id=user.pk, payee_type=TypeChoices.USER.value) | Q(payer_id=user.pk, payer_type=TypeChoices.USER.value)).all()
def perform_create(self, serializer):
payer = self.request.user # TODO:
payee = self.request.auth.application_owner # def perform_create(self, serializer):
serializer.save(payer=payer, payee=payee, application=get_application(self.request)) # payer = self.request.user
# payee = self.request.auth.application_owner
# serializer.save(payer_id=payer.pk, payee=payee, application=get_application(self.request))
class TransactionDetail(generics.RetrieveAPIView): class TransactionDetail(generics.RetrieveAPIView):