changes of guardian code status in necessary API

This commit is contained in:
jain
2023-08-26 17:48:13 +05:30
parent cf9376663c
commit eb4e09964d
5 changed files with 56 additions and 88 deletions

View File

@ -403,11 +403,7 @@ class ApproveJuniorSerializer(serializers.ModelSerializer):
"""update guardian code""" """update guardian code"""
instance = self.context['junior'] instance = self.context['junior']
guardian_code = self.context['guardian_code'] guardian_code = self.context['guardian_code']
print("guardian_code==>", guardian_code, '==>', type(guardian_code))
print("instance.guardian_code==>", instance.guardian_code, '==>',
type(instance.guardian_code))
index = instance.guardian_code.index(guardian_code) index = instance.guardian_code.index(guardian_code)
print("index==>", index, '==>', type(index))
instance.guardian_code_status[index] = str(NUMBER['two']) instance.guardian_code_status[index] = str(NUMBER['two'])
instance.save() instance.save()
return instance return instance
@ -516,11 +512,7 @@ class GuardianDetailListSerializer(serializers.ModelSerializer):
def get_guardian_code_status(self,obj): def get_guardian_code_status(self,obj):
"""guardian code status""" """guardian code status"""
print("obj.guardian.guardian_code===>",obj.guardian.guardian_code,'===>',type(obj.guardian.guardian_code))
print("obj.junior.guardian_code===>", obj.junior.guardian_code, '===>', type(obj.junior.guardian_code))
if obj.guardian.guardian_code in obj.junior.guardian_code: if obj.guardian.guardian_code in obj.junior.guardian_code:
index = obj.junior.guardian_code.index(obj.guardian.guardian_code) index = obj.junior.guardian_code.index(obj.guardian.guardian_code)
print("index===>", index, '===>', type(index))
data = obj.junior.guardian_code_status[index] data = obj.junior.guardian_code_status[index]
print("data===>", data, '===>', type(data)) return data
return obj.junior.guardian_code_status

View File

@ -182,9 +182,7 @@ class CreateTaskAPIView(viewsets.ModelViewSet):
if junior_id: if junior_id:
guardian_data = Guardian.objects.filter(user=request.user).last() guardian_data = Guardian.objects.filter(user=request.user).last()
index = junior_id.guardian_code.index(guardian_data.guardian_code) index = junior_id.guardian_code.index(guardian_data.guardian_code)
print("index===>", index, '===>', type(index))
status_index = junior_id.guardian_code_status[index] status_index = junior_id.guardian_code_status[index]
print("status_index===>", status_index, '===>', type(status_index))
if status_index == str(NUMBER['three']): if status_index == str(NUMBER['three']):
return custom_error_response(ERROR_CODE['2078'], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE['2078'], response_status=status.HTTP_400_BAD_REQUEST)
allowed_extensions = ['.jpg', '.jpeg', '.png'] allowed_extensions = ['.jpg', '.jpeg', '.png']
@ -308,20 +306,13 @@ class ApproveJuniorAPIView(viewsets.ModelViewSet):
junior_queryset.auth.id) junior_queryset.auth.id)
return custom_response(SUCCESS_CODE['3023'], serializer.data, response_status=status.HTTP_200_OK) return custom_response(SUCCESS_CODE['3023'], serializer.data, response_status=status.HTTP_200_OK)
else: else:
print("#############################################")
if junior_queryset.guardian_code and ('-' in junior_queryset.guardian_code): if junior_queryset.guardian_code and ('-' in junior_queryset.guardian_code):
print("777777777777777")
junior_queryset.guardian_code.remove('-') junior_queryset.guardian_code.remove('-')
if junior_queryset.guardian_code_status and ('-' in junior_queryset.guardian_code_status): if junior_queryset.guardian_code_status and ('-' in junior_queryset.guardian_code_status):
print("666666666666666666666666")
junior_queryset.guardian_code_status.remove('-') junior_queryset.guardian_code_status.remove('-')
print("guardian.guardian_code==>", guardian.guardian_code, '==>', type(guardian.guardian_code))
print("junior_queryset.guardian_code==>", junior_queryset.guardian_code, '==>', type(junior_queryset.guardian_code))
index = junior_queryset.guardian_code.index(guardian.guardian_code) index = junior_queryset.guardian_code.index(guardian.guardian_code)
print("index==>", index, '==>', type(index))
junior_queryset.guardian_code.remove(guardian.guardian_code) junior_queryset.guardian_code.remove(guardian.guardian_code)
data = junior_queryset.guardian_code_status.pop(index) junior_queryset.guardian_code_status.pop(index)
print("data==>", data, '==>', type(data))
junior_queryset.save() junior_queryset.save()
send_notification.delay(ASSOCIATE_REJECTED, guardian.user.id, GUARDIAN, junior_queryset.auth.id) send_notification.delay(ASSOCIATE_REJECTED, guardian.user.id, GUARDIAN, junior_queryset.auth.id)
return custom_response(SUCCESS_CODE['3024'], response_status=status.HTTP_200_OK) return custom_response(SUCCESS_CODE['3024'], response_status=status.HTTP_200_OK)
@ -372,7 +363,7 @@ class ApproveTaskAPIView(viewsets.ModelViewSet):
return custom_error_response(ERROR_CODE['2038'], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE['2038'], 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)
#
class GuardianListAPIView(viewsets.ModelViewSet): class GuardianListAPIView(viewsets.ModelViewSet):
"""Guardian list of assosicated junior""" """Guardian list of assosicated junior"""

View File

@ -92,13 +92,11 @@ class CreateJuniorSerializer(serializers.ModelSerializer):
# condition for guardian code # condition for guardian code
if guardian_code: if guardian_code:
if not junior.guardian_code: if not junior.guardian_code:
print("111111111")
junior.guardian_code = [] junior.guardian_code = []
junior.guardian_code_status = [] junior.guardian_code_status = []
junior.guardian_code.extend(guardian_code) junior.guardian_code.extend(guardian_code)
junior.guardian_code_status.extend(str(NUMBER['three'])) junior.guardian_code_status.extend(str(NUMBER['three']))
elif len(junior.guardian_code) < 3 and len(guardian_code) < 3: elif len(junior.guardian_code) < 3 and len(guardian_code) < 3:
print("2222222222")
junior.guardian_code.extend(guardian_code) junior.guardian_code.extend(guardian_code)
junior.guardian_code_status.extend(str(NUMBER['three'])) junior.guardian_code_status.extend(str(NUMBER['three']))
else: else:
@ -106,9 +104,6 @@ class CreateJuniorSerializer(serializers.ModelSerializer):
guardian_data = Guardian.objects.filter(guardian_code=guardian_code[0]).last() guardian_data = Guardian.objects.filter(guardian_code=guardian_code[0]).last()
if guardian_data: if guardian_data:
JuniorGuardianRelationship.objects.get_or_create(guardian=guardian_data, junior=junior) JuniorGuardianRelationship.objects.get_or_create(guardian=guardian_data, junior=junior)
# print("junior.guardian_code.index(guardian_code)==>",junior.guardian_code.index(guardian_code),'===>',type(junior.guardian_code.index(guardian_code)))
print("junior.guardian_code==>", junior.guardian_code, '===>', type(junior.guardian_code))
junior_approval_mail.delay(user.email, user.first_name) junior_approval_mail.delay(user.email, user.first_name)
send_notification.delay(ASSOCIATE_REQUEST, junior.auth.id, JUNIOR, guardian_data.user.id, {}) send_notification.delay(ASSOCIATE_REQUEST, junior.auth.id, JUNIOR, guardian_data.user.id, {})
@ -304,8 +299,8 @@ class AddJuniorSerializer(serializers.ModelSerializer):
referral_code_used=guardian_data.referral_code, referral_code_used=guardian_data.referral_code,
is_password_set=False, is_verified=True, is_password_set=False, is_verified=True,
guardian_code_status=[str(NUMBER['two'])]) guardian_code_status=[str(NUMBER['two'])])
JuniorGuardianRelationship.objects.get_or_create(guardian=guardian_data, junior=junior_data, JuniorGuardianRelationship.objects.create(guardian=guardian_data, junior=junior_data,
relationship=relationship) relationship=relationship)
total_junior = Junior.objects.all().count() total_junior = Junior.objects.all().count()
JuniorPoints.objects.create(junior=junior_data, position=total_junior) JuniorPoints.objects.create(junior=junior_data, position=total_junior)
"""Generate otp""" """Generate otp"""
@ -334,17 +329,10 @@ class RemoveJuniorSerializer(serializers.ModelSerializer):
guardian_code = self.context['guardian_code'] guardian_code = self.context['guardian_code']
instance.is_invited = False instance.is_invited = False
if instance.guardian_code and ('-' in instance.guardian_code): if instance.guardian_code and ('-' in instance.guardian_code):
print("1111111111111")
instance.guardian_code.remove('-') instance.guardian_code.remove('-')
print("instance.guardian_code==>",instance.guardian_code,'==>',type(instance.guardian_code),'===>',
len(instance.guardian_code))
print("instance.guardian_code_status==>", instance.guardian_code_status, '==>', type(instance.guardian_code_status), '===>',
len(instance.guardian_code_status))
index = instance.guardian_code.index(guardian_code) index = instance.guardian_code.index(guardian_code)
print("index==>",index,'==>',type(index))
instance.guardian_code.remove(guardian_code) instance.guardian_code.remove(guardian_code)
data = instance.guardian_code_status.pop(index) instance.guardian_code_status.pop(index)
print("data==>", data, '==>', type(data))
instance.save() instance.save()
return instance return instance
@ -463,7 +451,7 @@ class AddGuardianSerializer(serializers.ModelSerializer):
user_type=str(NUMBER['two']), expired_at=expiry_time, user_type=str(NUMBER['two']), expired_at=expiry_time,
is_verified=True) is_verified=True)
UserNotification.objects.get_or_create(user=user) UserNotification.objects.get_or_create(user=user)
JuniorGuardianRelationship.objects.get_or_create(guardian=guardian_data, junior=junior_data, JuniorGuardianRelationship.objects.create(guardian=guardian_data, junior=junior_data,
relationship=relationship) relationship=relationship)
"""Notification email""" """Notification email"""
@ -523,16 +511,12 @@ class RemoveGuardianCodeSerializer(serializers.ModelSerializer):
guardian_code = self.context['guardian_code'] guardian_code = self.context['guardian_code']
if guardian_code in instance.guardian_code: if guardian_code in instance.guardian_code:
if instance.guardian_code and ('-' in instance.guardian_code): if instance.guardian_code and ('-' in instance.guardian_code):
print("777777777777777")
instance.guardian_code.remove('-') instance.guardian_code.remove('-')
if instance.guardian_code_status and ('-' in instance.guardian_code_status): if instance.guardian_code_status and ('-' in instance.guardian_code_status):
print("666666666666666666666666")
instance.guardian_code_status.remove('-') instance.guardian_code_status.remove('-')
index = instance.guardian_code.index(guardian_code) index = instance.guardian_code.index(guardian_code)
print("index===>",index,'===>',type(index))
instance.guardian_code.remove(guardian_code) instance.guardian_code.remove(guardian_code)
data = instance.guardian_code_status.pop(index) instance.guardian_code_status.pop(index)
print("data===>", data, '===>', type(data))
else: else:
raise serializers.ValidationError({"error":ERROR_CODE['2082'],"code":"400", "status":"failed"}) raise serializers.ValidationError({"error":ERROR_CODE['2082'],"code":"400", "status":"failed"})
instance.save() instance.save()

View File

@ -211,7 +211,6 @@ class AddJuniorAPIView(viewsets.ModelViewSet):
junior = Junior.objects.filter(auth__email=self.request.data['email']).first() junior = Junior.objects.filter(auth__email=self.request.data['email']).first()
guardian = Guardian.objects.filter(user=self.request.user).first() guardian = Guardian.objects.filter(user=self.request.user).first()
if junior.guardian_code and ('-' in junior.guardian_code): if junior.guardian_code and ('-' in junior.guardian_code):
print("1111111111111")
junior.guardian_code.remove('-') junior.guardian_code.remove('-')
if not junior: if not junior:
return none return none
@ -225,8 +224,10 @@ class AddJuniorAPIView(viewsets.ModelViewSet):
return "Max" return "Max"
junior.guardian_code_status = [str(NUMBER['two'])] junior.guardian_code_status = [str(NUMBER['two'])]
junior.save() junior.save()
JuniorGuardianRelationship.objects.get_or_create(guardian=guardian, junior=junior, jun_data, created = JuniorGuardianRelationship.objects.get_or_create(guardian=guardian, junior=junior)
relationship=str(self.request.data['relationship'])) if jun_data:
jun_data.relationship = str(self.request.data['relationship'])
jun_data.save()
return True return True
@ -740,24 +741,24 @@ class RemoveGuardianCodeAPIView(views.APIView):
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
def put(self, request, format=None): def put(self, request, format=None):
# try: try:
guardian_code = self.request.data.get("guardian_code") guardian_code = self.request.data.get("guardian_code")
junior_queryset = Junior.objects.filter(auth=self.request.user).last() junior_queryset = Junior.objects.filter(auth=self.request.user).last()
if junior_queryset: if junior_queryset:
# use RemoveGuardianCodeSerializer serializer # use RemoveGuardianCodeSerializer serializer
serializer = RemoveGuardianCodeSerializer(junior_queryset, context = {"guardian_code":guardian_code}, serializer = RemoveGuardianCodeSerializer(junior_queryset, context = {"guardian_code":guardian_code},
data=request.data, partial=True) data=request.data, partial=True)
if serializer.is_valid(): if serializer.is_valid():
# save serializer # save serializer
serializer.save() serializer.save()
return custom_response(SUCCESS_CODE['3044'], response_status=status.HTTP_200_OK) return custom_response(SUCCESS_CODE['3044'], 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 # task in another state
return custom_error_response(ERROR_CODE['2047'], response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(ERROR_CODE['2047'], response_status=status.HTTP_400_BAD_REQUEST)
# except Exception as e: except Exception as e:
# error_detail = e.detail.get('error', None) error_detail = e.detail.get('error', None)
# return custom_error_response(error_detail, response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(error_detail, response_status=status.HTTP_400_BAD_REQUEST)
class FAQViewSet(GenericViewSet, mixins.CreateModelMixin, class FAQViewSet(GenericViewSet, mixins.CreateModelMixin,

View File

@ -181,32 +181,32 @@ AUTH_PASSWORD_VALIDATORS = [
# database query logs settings # database query logs settings
# Allows us to check db hits # Allows us to check db hits
# useful to optimize db query and hit # useful to optimize db query and hit
# LOGGING = { LOGGING = {
# "version": 1, "version": 1,
# "filters": { "filters": {
# "require_debug_true": { "require_debug_true": {
# "()": "django.utils.log.RequireDebugTrue" "()": "django.utils.log.RequireDebugTrue"
# } }
# }, },
# "handlers": { "handlers": {
# "console": { "console": {
# "level": "DEBUG", "level": "DEBUG",
# "filters": [ "filters": [
# "require_debug_true" "require_debug_true"
# ], ],
# "class": "logging.StreamHandler" "class": "logging.StreamHandler"
# } }
# }, },
# # database logger # database logger
# "loggers": { "loggers": {
# "django.db.backends": { "django.db.backends": {
# "level": "DEBUG", "level": "DEBUG",
# "handlers": [ "handlers": [
# "console" "console"
# ] ]
# } }
# } }
# } }
# Internationalization # Internationalization
# https://docs.djangoproject.com/en/3.0/topics/i18n/ # https://docs.djangoproject.com/en/3.0/topics/i18n/