user balance for applications
This commit is contained in:
parent
5edcf1793d
commit
821304f1c8
2 changed files with 19 additions and 0 deletions
|
|
@ -27,6 +27,8 @@ user_urlpatterns = [
|
||||||
application_urlpatterns = [
|
application_urlpatterns = [
|
||||||
path('api/application/balance', application_views.BalanceAPIView.as_view(), name='application_wallet_balance_api'),
|
path('api/application/balance', application_views.BalanceAPIView.as_view(), name='application_wallet_balance_api'),
|
||||||
|
|
||||||
|
path('api/application/user_balance/<uuid>', application_views.UserBalanceAPIView.as_view(), name='application_user_wallet_balance_api'),
|
||||||
|
|
||||||
path('api/application/deposit/', application_views.DepositSubmitAPIView.as_view(), name='application_deposit_submit_api'),
|
path('api/application/deposit/', application_views.DepositSubmitAPIView.as_view(), name='application_deposit_submit_api'),
|
||||||
path('api/application/deposit/<uuid>/verify', application_views.DepositVerifyAPIView.as_view(), name='application_deposit_verify_api'),
|
path('api/application/deposit/<uuid>/verify', application_views.DepositVerifyAPIView.as_view(), name='application_deposit_verify_api'),
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,10 @@ from django.db.models import Q
|
||||||
from oauth2_provider.contrib.rest_framework import TokenHasScope, IsAuthenticatedOrTokenHasScope
|
from oauth2_provider.contrib.rest_framework import TokenHasScope, IsAuthenticatedOrTokenHasScope
|
||||||
from rest_framework import generics, permissions, mixins
|
from rest_framework import generics, permissions, mixins
|
||||||
from rest_framework.exceptions import APIException
|
from rest_framework.exceptions import APIException
|
||||||
|
from rest_framework.generics import get_object_or_404
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
|
|
||||||
|
from apps.users.models import User
|
||||||
from apps.wallet.constans import TypeChoices, StateChoices
|
from apps.wallet.constans import TypeChoices, StateChoices
|
||||||
from apps.wallet.models import Transaction
|
from apps.wallet.models import Transaction
|
||||||
from apps.wallet.serializers import ApplicationDepositSerializer, ApplicationWithdrawSerializer, \
|
from apps.wallet.serializers import ApplicationDepositSerializer, ApplicationWithdrawSerializer, \
|
||||||
|
|
@ -30,6 +32,21 @@ class BalanceAPIView(generics.RetrieveAPIView):
|
||||||
return get_application(self.request)
|
return get_application(self.request)
|
||||||
|
|
||||||
|
|
||||||
|
class UserBalanceAPIView(generics.RetrieveAPIView):
|
||||||
|
'''
|
||||||
|
API for getting specified user or application balance.
|
||||||
|
'''
|
||||||
|
permission_classes = [IsAuthenticatedOrTokenHasScope]
|
||||||
|
serializer_class = ApplicationBalanceSerializer
|
||||||
|
required_scopes = ['wallet.application:get_user_balance']
|
||||||
|
|
||||||
|
def get_object(self):
|
||||||
|
user_uuid = self.kwargs.get('uuid')
|
||||||
|
user = get_object_or_404(User.objects.all(), uuid=user_uuid)
|
||||||
|
|
||||||
|
return user
|
||||||
|
|
||||||
|
|
||||||
class TransactionDetailAPIView(generics.RetrieveAPIView):
|
class TransactionDetailAPIView(generics.RetrieveAPIView):
|
||||||
permission_classes = [TokenHasScope]
|
permission_classes = [TokenHasScope]
|
||||||
serializer_class = ApplicationTransactionSerializer
|
serializer_class = ApplicationTransactionSerializer
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue