sonar issues

This commit is contained in:
jain
2023-07-25 17:06:26 +05:30
parent 7c4f9b2506
commit a8558b5e6e
4 changed files with 28 additions and 6 deletions

View File

@ -76,12 +76,15 @@ ERROR_CODE = {
"2043": "Article Survey with given id doesn't exist.", "2043": "Article Survey with given id doesn't exist.",
"2044": "Task does not exist", "2044": "Task does not exist",
"2045": "Invalid guardian", "2045": "Invalid guardian",
# past due date
"2046": "Due date must be future date", "2046": "Due date must be future date",
# invalid junior id msg # invalid junior id msg
"2047": "Invalid Junior ID ", "2047": "Invalid Junior ID ",
"2048": "Choose right file for image", "2048": "Choose right file for image",
# task request
"2049": "This task is already requested ", "2049": "This task is already requested ",
"2059": "Already exist junior", "2059": "Already exist junior",
# task status
"2060": "Task does not exist or not in pending state" "2060": "Task does not exist or not in pending state"
} }
"""Success message code""" """Success message code"""

View File

@ -1,6 +1,11 @@
"""Views of Guardian""" """Views of Guardian"""
# django imports # django imports
# Import IsAuthenticated
# Import viewsets and status
# Import PageNumberPagination
# Import User
# Import timezone
from rest_framework.permissions import IsAuthenticated from rest_framework.permissions import IsAuthenticated
from rest_framework import viewsets, status from rest_framework import viewsets, status
from rest_framework.pagination import PageNumberPagination from rest_framework.pagination import PageNumberPagination
@ -18,7 +23,8 @@ from django.utils import timezone
# from utils file # from utils file
# Import account's serializer # Import account's serializer
# Import account's task # Import account's task
# Import notification constant
# Import send_notification function
from .serializers import (UserSerializer, CreateGuardianSerializer, TaskSerializer, TaskDetailsSerializer, from .serializers import (UserSerializer, CreateGuardianSerializer, TaskSerializer, TaskDetailsSerializer,
TopJuniorSerializer, ApproveJuniorSerializer, ApproveTaskSerializer) TopJuniorSerializer, ApproveJuniorSerializer, ApproveTaskSerializer)
from .models import Guardian, JuniorTask from .models import Guardian, JuniorTask
@ -58,12 +64,14 @@ class SignupViewset(viewsets.ModelViewSet):
user = serializer.save() user = serializer.save()
"""Generate otp""" """Generate otp"""
otp = generate_otp() otp = generate_otp()
# expire otp after 1 day
expiry = timezone.now() + timezone.timedelta(days=1) expiry = timezone.now() + timezone.timedelta(days=1)
# create user email otp object # create user email otp object
UserEmailOtp.objects.create(email=request.data['email'], otp=otp, UserEmailOtp.objects.create(email=request.data['email'], otp=otp,
user_type=str(request.data['user_type']), expired_at=expiry) user_type=str(request.data['user_type']), expired_at=expiry)
"""Send email to the register user""" """Send email to the register user"""
send_otp_email(request.data['email'], otp) send_otp_email(request.data['email'], otp)
# send push notification for registration
send_notification(REGISTRATION, None, user.id, {}) send_notification(REGISTRATION, None, user.id, {})
return custom_response(SUCCESS_CODE['3001'], return custom_response(SUCCESS_CODE['3001'],
response_status=status.HTTP_200_OK) response_status=status.HTTP_200_OK)

View File

@ -112,7 +112,8 @@ class JuniorPoints(models.Model):
class JuniorGuardianRelationship(models.Model): class JuniorGuardianRelationship(models.Model):
"""Junior Guardian relationship model""" """Junior Guardian relationship model"""
guardian = models.ForeignKey(Guardian, on_delete=models.CASCADE, related_name='guardian_relation', verbose_name='Guardian') guardian = models.ForeignKey(Guardian, on_delete=models.CASCADE, related_name='guardian_relation',
verbose_name='Guardian')
# associated junior with the task # associated junior with the task
junior = models.ForeignKey(Junior, on_delete=models.CASCADE, related_name='junior_relation', verbose_name='Junior') junior = models.ForeignKey(Junior, on_delete=models.CASCADE, related_name='junior_relation', verbose_name='Junior')
# relation between guardian and junior""" # relation between guardian and junior"""

View File

@ -20,6 +20,10 @@ import requests
# Import account's serializer # Import account's serializer
# Import account's task # Import account's task
# import junior serializer # import junior serializer
# Import update_positions_based_on_points
# Import upload_image_to_alibaba
# Import custom_response, custom_error_response
# Import constants
from junior.models import Junior, JuniorPoints from junior.models import Junior, JuniorPoints
from .serializers import (CreateJuniorSerializer, JuniorDetailListSerializer, AddJuniorSerializer,\ from .serializers import (CreateJuniorSerializer, JuniorDetailListSerializer, AddJuniorSerializer,\
RemoveJuniorSerializer, CompleteTaskSerializer, JuniorPointsSerializer, RemoveJuniorSerializer, CompleteTaskSerializer, JuniorPointsSerializer,
@ -43,7 +47,10 @@ from .utils import update_positions_based_on_points
# approve junior API # approve junior API
# create referral code # create referral code
# validation API # validation API
# invite guardian API
# by junior
# Start task
# by junior API
# Create your views here. # Create your views here.
class UpdateJuniorProfile(viewsets.ViewSet): class UpdateJuniorProfile(viewsets.ViewSet):
"""Update junior profile""" """Update junior profile"""
@ -58,6 +65,7 @@ class UpdateJuniorProfile(viewsets.ViewSet):
image = request.data.get('image') image = request.data.get('image')
image_url = '' image_url = ''
if image: if image:
# check image size
if image.size == NUMBER['zero']: if image.size == NUMBER['zero']:
return custom_error_response(ERROR_CODE['2035'], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE['2035'], response_status=status.HTTP_400_BAD_REQUEST)
# convert into file # convert into file
@ -91,6 +99,7 @@ class ValidateGuardianCode(viewsets.ViewSet):
# fetch guardian object # fetch guardian object
guardian_data = Guardian.objects.filter(guardian_code=code).exists() guardian_data = Guardian.objects.filter(guardian_code=code).exists()
if guardian_data: if guardian_data:
# successfully check guardian code
return custom_response(SUCCESS_CODE['3013'], response_status=status.HTTP_200_OK) return custom_response(SUCCESS_CODE['3013'], response_status=status.HTTP_200_OK)
else: else:
return custom_error_response(ERROR_CODE["2022"], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE["2022"], response_status=status.HTTP_400_BAD_REQUEST)
@ -129,13 +138,13 @@ class AddJuniorAPIView(viewsets.ModelViewSet):
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
""" junior list""" """ junior list"""
try: try:
info = {'user': request.user, 'email': request.data['email'], 'first_name': request.data['first_name'], info_data = {'user': request.user, 'relationship': str(request.data['relationship']), 'email': request.data['email'], 'first_name': request.data['first_name'],
'last_name': request.data['last_name'], 'relationship': str(request.data['relationship'])} 'last_name': request.data['last_name']}
if User.objects.filter(username=request.data['email']): if User.objects.filter(username=request.data['email']):
return custom_error_response(ERROR_CODE['2059'], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE['2059'], response_status=status.HTTP_400_BAD_REQUEST)
# use AddJuniorSerializer serializer # use AddJuniorSerializer serializer
serializer = AddJuniorSerializer(data=request.data, context=info) serializer = AddJuniorSerializer(data=request.data, context=info_data)
if serializer.is_valid(): if serializer.is_valid():
# save serializer # save serializer
serializer.save() serializer.save()
@ -396,6 +405,7 @@ class StartTaskAPIView(views.APIView):
return custom_response(SUCCESS_CODE['3035'], serializer.data, response_status=status.HTTP_200_OK) return custom_response(SUCCESS_CODE['3035'], serializer.data, response_status=status.HTTP_200_OK)
return custom_error_response(serializer.errors, response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(serializer.errors, response_status=status.HTTP_400_BAD_REQUEST)
else: else:
# task in another state
return custom_error_response(ERROR_CODE['2060'], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE['2060'], response_status=status.HTTP_400_BAD_REQUEST)
except Exception as e: except Exception as e:
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)