mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-11-26 08:34:55 +00:00
requested task not expired
This commit is contained in:
@ -107,7 +107,8 @@ ERROR_CODE = {
|
||||
"2078": "This junior is not associate with you",
|
||||
"2079": "Please update your app version for enjoying uninterrupted services",
|
||||
"2080": "Can not add App version",
|
||||
"2081": "You can not add more than 3 guardian"
|
||||
"2081": "You can not add more than 3 guardian",
|
||||
"2082": "Guardian code does not exist"
|
||||
|
||||
}
|
||||
"""Success message code"""
|
||||
|
||||
@ -127,7 +127,7 @@ def update_expired_task_status(data=None):
|
||||
Update task of the status if due date is in past
|
||||
"""
|
||||
try:
|
||||
task_status = [str(NUMBER['one']), str(NUMBER['two']), str(NUMBER['four'])]
|
||||
task_status = [str(NUMBER['one']), str(NUMBER['two'])]
|
||||
JuniorTask.objects.filter(due_date__lt=datetime.today().date(),
|
||||
task_status__in=task_status).update(task_status=str(NUMBER['six']))
|
||||
except ObjectDoesNotExist as e:
|
||||
|
||||
@ -508,8 +508,17 @@ class RemoveGuardianCodeSerializer(serializers.ModelSerializer):
|
||||
model = Junior
|
||||
fields = ('id', )
|
||||
def update(self, instance, validated_data):
|
||||
instance.guardian_code = None
|
||||
guardian_code = self.context['guardian_code']
|
||||
if guardian_code in instance.guardian_code:
|
||||
instance.guardian_code.remove(guardian_code)
|
||||
else:
|
||||
raise serializers.ValidationError({"error":ERROR_CODE['2082'],"code":"400", "status":"failed"})
|
||||
if not instance.guardian_code:
|
||||
instance.guardian_code_status = str(NUMBER['one'])
|
||||
elif instance.guardian_code and (len(instance.guardian_code) == 1 and '-' in instance.guardian_code):
|
||||
instance.guardian_code_status = str(NUMBER['one'])
|
||||
else:
|
||||
instance.guardian_code_status = str(NUMBER['two'])
|
||||
instance.save()
|
||||
return instance
|
||||
|
||||
|
||||
@ -207,13 +207,15 @@ class AddJuniorAPIView(viewsets.ModelViewSet):
|
||||
def associate_guardian(self, user):
|
||||
junior = Junior.objects.filter(auth__email=self.request.data['email']).first()
|
||||
guardian = Guardian.objects.filter(user=self.request.user).first()
|
||||
if junior.guardian_code and ('-' in junior.guardian_code):
|
||||
junior.guardian_code.remove('-')
|
||||
if not junior:
|
||||
return none
|
||||
if junior.guardian_code and (guardian.guardian_code in junior.guardian_code):
|
||||
return False
|
||||
if not junior.guardian_code:
|
||||
junior.guardian_code = [guardian.guardian_code]
|
||||
if type(junior.guardian_code) is list and len(junior.guardian_code) < 4:
|
||||
if type(junior.guardian_code) is list and len(junior.guardian_code) < 3:
|
||||
junior.guardian_code.append(guardian.guardian_code)
|
||||
else:
|
||||
return "Max"
|
||||
@ -724,16 +726,21 @@ class CreateArticleCardAPIView(viewsets.ModelViewSet):
|
||||
|
||||
class RemoveGuardianCodeAPIView(views.APIView):
|
||||
"""Remove guardian code request API
|
||||
No Payload"""
|
||||
Payload
|
||||
{"guardian_code"
|
||||
:"GRD037"
|
||||
}"""
|
||||
serializer_class = RemoveGuardianCodeSerializer
|
||||
permission_classes = [IsAuthenticated]
|
||||
|
||||
def put(self, request, format=None):
|
||||
try:
|
||||
guardian_code = self.request.data.get("guardian_code")
|
||||
junior_queryset = Junior.objects.filter(auth=self.request.user).last()
|
||||
if junior_queryset:
|
||||
# use RemoveGuardianCodeSerializer serializer
|
||||
serializer = RemoveGuardianCodeSerializer(junior_queryset, data=request.data, partial=True)
|
||||
serializer = RemoveGuardianCodeSerializer(junior_queryset, context = {"guardian_code":guardian_code},
|
||||
data=request.data, partial=True)
|
||||
if serializer.is_valid():
|
||||
# save serializer
|
||||
serializer.save()
|
||||
@ -743,7 +750,8 @@ class RemoveGuardianCodeAPIView(views.APIView):
|
||||
# task in another state
|
||||
return custom_error_response(ERROR_CODE['2047'], response_status=status.HTTP_400_BAD_REQUEST)
|
||||
except Exception as e:
|
||||
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
|
||||
error_detail = e.detail.get('error', None)
|
||||
return custom_error_response(error_detail, response_status=status.HTTP_400_BAD_REQUEST)
|
||||
|
||||
|
||||
class FAQViewSet(GenericViewSet, mixins.CreateModelMixin,
|
||||
|
||||
Reference in New Issue
Block a user