Files
zod-backend/zod_bank/junior/views.py
2023-06-23 19:13:49 +05:30

41 lines
2.0 KiB
Python

from django.shortcuts import render
from rest_framework import (pagination, viewsets, status, generics, mixins)
from rest_framework.decorators import action
from rest_framework.response import Response
from django.views.decorators.csrf import csrf_exempt
# Create your views here.
from rest_framework import viewsets, status
from rest_framework.response import Response
from .serializers import CreateJuniorSerializer
from django.contrib.auth.models import User
from rest_framework.permissions import IsAuthenticated
from base.constants import GUARDIAN, JUNIOR, SUPERUSER
from junior.models import Junior
from guardian.models import Guardian
from base.messages import ERROR_CODE, SUCCESS_CODE
from account.utils import custom_response, custom_error_response
class UpdateJuniorProfile(viewsets.ViewSet):
serializer_class = CreateJuniorSerializer
permission_classes = [IsAuthenticated]
def create(self, request, *args, **kwargs):
serializer = CreateJuniorSerializer(context={"user":request.user,"first_name":request.data.get('first_name', ''),
"last_name": request.data.get('last_name',' ')}, data=request.data)
if serializer.is_valid():
serializer.save()
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)
return custom_error_response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
class ValidateGuardianCode(viewsets.ViewSet):
permission_classes = [IsAuthenticated]
def list(self, request, *args, **kwargs):
guardian_code = request.data.get('guardian_code')
for code in guardian_code:
guardian_data = Guardian.objects.filter(guardian_code=code).exists()
if guardian_data:
return custom_response(SUCCESS_CODE['3028'], response_status=status.HTTP_200_OK)
else:
return custom_error_response(ERROR_CODE["2022"], response_status=status.HTTP_400_BAD_REQUEST)