mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-07-16 02:16:16 +00:00
jira-15 dashboard api profile, default image, top leaderboard API
This commit is contained in:
@ -38,9 +38,11 @@ class UserSerializer(serializers.ModelSerializer):
|
||||
user = User.objects.create_user(username=email, email=email, password=password)
|
||||
UserProfile.objects.create(user=user, user_type=user_type)
|
||||
if user_type == '1':
|
||||
Junior.objects.create(auth=user)
|
||||
Junior.objects.create(auth=user, junior_code=''.join([str(random.randrange(9)) for _ in range(6)]),
|
||||
referral_code=''.join([str(random.randrange(9)) for _ in range(6)]))
|
||||
if user_type == '2':
|
||||
Guardian.objects.create(user=user)
|
||||
Guardian.objects.create(user=user, guardian_code=''.join([str(random.randrange(9)) for _ in range(6)]),
|
||||
referral_code=''.join([str(random.randrange(9)) for _ in range(6)]))
|
||||
return user
|
||||
except Exception as e:
|
||||
"""Error handling"""
|
||||
@ -88,11 +90,6 @@ class CreateGuardianSerializer(serializers.ModelSerializer):
|
||||
|
||||
def create(self, validated_data):
|
||||
"""Create guardian profile"""
|
||||
# phone_number = validated_data.get('phone', None)
|
||||
# guardian_data = Guardian.objects.filter(phone=phone_number)
|
||||
# junior_data = Junior.objects.filter(phone=phone_number)
|
||||
# if phone_number and (guardian_data or junior_data):
|
||||
# raise serializers.ValidationError({"details": ERROR_CODE['2012']})
|
||||
user = User.objects.filter(username=self.context['user']).last()
|
||||
if user:
|
||||
"""Save first and last name of guardian"""
|
||||
@ -176,7 +173,7 @@ class GuardianDetailSerializer(serializers.ModelSerializer):
|
||||
'updated_at']
|
||||
class TaskDetailsSerializer(serializers.ModelSerializer):
|
||||
|
||||
guardian = GuardianDetailSerializer()
|
||||
# guardian = GuardianDetailSerializer()
|
||||
junior = JuniorDetailSerializer()
|
||||
class Meta(object):
|
||||
model = JuniorTask
|
||||
@ -216,3 +213,27 @@ class TopJuniorSerializer(serializers.ModelSerializer):
|
||||
return item['total_points']
|
||||
return 0
|
||||
|
||||
class GuardianProfileSerializer(serializers.ModelSerializer):
|
||||
"""junior serializer"""
|
||||
|
||||
email = serializers.SerializerMethodField('get_auth')
|
||||
first_name = serializers.SerializerMethodField('get_first_name')
|
||||
last_name = serializers.SerializerMethodField('get_last_name')
|
||||
|
||||
def get_auth(self, obj):
|
||||
"""user email address"""
|
||||
return obj.user.username
|
||||
|
||||
def get_first_name(self, obj):
|
||||
"""user first name"""
|
||||
return obj.user.first_name
|
||||
|
||||
def get_last_name(self, obj):
|
||||
"""user last name"""
|
||||
return obj.user.last_name
|
||||
class Meta(object):
|
||||
"""Meta info"""
|
||||
model = Guardian
|
||||
fields = ['id', 'email', 'first_name', 'last_name', 'country_code', 'phone', 'gender', 'dob',
|
||||
'guardian_code', 'referral_code','is_active', 'is_complete_profile', 'created_at', 'image',
|
||||
'updated_at']
|
Reference in New Issue
Block a user