jira-21 approve task API

This commit is contained in:
jain
2023-07-17 18:00:19 +05:30
parent 4779749b0c
commit 8f1f49de45
4 changed files with 16 additions and 4 deletions

View File

@ -38,7 +38,7 @@ from account.utils import (send_otp_email, send_support_email, custom_response,
from junior.serializers import JuniorProfileSerializer
from guardian.serializers import GuardianProfileSerializer
class GoogleLoginMixin:
class GoogleLoginMixin(object):
"""google login mixin"""
@staticmethod
def google_login(self, request):

View File

@ -295,14 +295,21 @@ class ApproveTaskSerializer(serializers.ModelSerializer):
def create(self, validated_data):
"""update task status """
instance = self.context['task_instance']
junior = self.context['junior']
junior_details = Junior.objects.filter(id=junior).last()
junior_data, created = JuniorPoints.objects.get_or_create(junior=junior_details)
if self.context['action'] == str(NUMBER['one']):
# approve the task
instance.task_status = str(NUMBER['five'])
instance.is_approved = True
junior_data.total_task_points = junior_data.total_task_points + instance.points
junior_data.save()
else:
# reject the task
instance.task_status = str(NUMBER['three'])
instance.is_approved = False
junior_data.total_task_points = junior_data.total_task_points - instance.points
junior_data.save()
instance.save()
return instance

View File

@ -256,7 +256,8 @@ class ApproveTaskAPIView(viewsets.ViewSet):
# use ApproveJuniorSerializer serializer
serializer = ApproveTaskSerializer(context={"guardian_code": queryset[0].guardian_code,
"task_instance": queryset[1],
"action": str(request.data['action'])},
"action": str(request.data['action']),
"junior": self.request.data['junior_id']},
data=request.data)
if str(request.data['action']) == str(NUMBER['one']) and serializer.is_valid():
# save serializer

View File

@ -1,11 +1,15 @@
#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
"""Django import"""
"""Import OS module"""
# Import OS module
import os
"""Import sys module"""
# Import sys module"""
import sys
# define all function
# execute command line
# Import execute from command line
# fetch django settings
def main():
"""Main function"""