mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-11-27 17:14:55 +00:00
jira-25 setting API
This commit is contained in:
@ -7,7 +7,7 @@ from rest_framework_simplejwt.tokens import RefreshToken
|
||||
"""App import"""
|
||||
from guardian.models import Guardian
|
||||
from junior.models import Junior
|
||||
from account.models import UserProfile, UserEmailOtp, UserPhoneOtp, DefaultTaskImages, UserDelete
|
||||
from account.models import UserEmailOtp, DefaultTaskImages, UserDelete, UserNotification
|
||||
from base.constants import GUARDIAN, JUNIOR, SUPERUSER
|
||||
from base.messages import ERROR_CODE_REQUIRED, ERROR_CODE, SUCCESS_CODE, STATUS_CODE_ERROR
|
||||
|
||||
@ -230,36 +230,64 @@ class UserDeleteSerializer(serializers.ModelSerializer):
|
||||
user = self.context['user']
|
||||
user_type = str(self.context['user_type'])
|
||||
data = validated_data.get('reason')
|
||||
passwd = self.context['password']
|
||||
random_num = random.randint(0,10000)
|
||||
user_tb = User.objects.filter(id=user.id).last()
|
||||
user_type_data = UserEmailOtp.objects.filter(email=user.email).last()
|
||||
if user_type == '1' and user_type_data.user_type == '1':
|
||||
junior_data = Junior.objects.filter(auth__email=user_tb.email).first()
|
||||
if junior_data:
|
||||
junior_data.is_active = False
|
||||
junior_data.is_verified = False
|
||||
junior_data.guardian_code = '{}'
|
||||
junior_data.save()
|
||||
elif user_type == '2' and user_type_data.user_type == '2':
|
||||
guardian_data = Guardian.objects.filter(user__email=user_tb.email).first()
|
||||
if guardian_data:
|
||||
guardian_data.is_active = False
|
||||
guardian_data.is_verified = False
|
||||
guardian_data.save()
|
||||
jun_data = Junior.objects.filter(guardian_code__icontains=str(guardian_data.guardian_code))
|
||||
for data in jun_data:
|
||||
data.guardian_code.remove(guardian_data.guardian_code)
|
||||
data.save()
|
||||
if user_tb.check_password(passwd):
|
||||
user_type_data = UserEmailOtp.objects.filter(email=user.email).last()
|
||||
if user_type == '1' and user_type_data.user_type == '1':
|
||||
junior_data = Junior.objects.filter(auth__email=user_tb.email).first()
|
||||
if junior_data:
|
||||
junior_data.is_active = False
|
||||
junior_data.is_verified = False
|
||||
junior_data.guardian_code = '{}'
|
||||
junior_data.save()
|
||||
elif user_type == '2' and user_type_data.user_type == '2':
|
||||
guardian_data = Guardian.objects.filter(user__email=user_tb.email).first()
|
||||
if guardian_data:
|
||||
guardian_data.is_active = False
|
||||
guardian_data.is_verified = False
|
||||
guardian_data.save()
|
||||
jun_data = Junior.objects.filter(guardian_code__icontains=str(guardian_data.guardian_code))
|
||||
for data in jun_data:
|
||||
data.guardian_code.remove(guardian_data.guardian_code)
|
||||
data.save()
|
||||
else:
|
||||
raise serializers.ValidationError({"details":ERROR_CODE['2030'],"code":"400", "status":"failed"})
|
||||
|
||||
user_tb.email = str(random_num) + str('@D_') + '{}'.format(user_tb.username).lower()
|
||||
user_tb.username = str(random_num) + str('@D_') + '{}'.format(user_tb.username).lower()
|
||||
user_tb.password = 'None'
|
||||
d_email = user_tb.email
|
||||
o_mail = user.email
|
||||
instance = UserDelete.objects.create(user=user_tb, d_email=d_email, old_email=o_mail,
|
||||
is_active=True, reason=data)
|
||||
user_tb.save()
|
||||
|
||||
return instance
|
||||
else:
|
||||
raise serializers.ValidationError({"details":ERROR_CODE['2030'],"code":"400", "status":"failed"})
|
||||
raise serializers.ValidationError({"details": ERROR_CODE['2031'], "code": "400", "status": "failed"})
|
||||
|
||||
user_tb.email = str(random_num) + str('@D_') + '{}'.format(user_tb.username).lower()
|
||||
user_tb.username = str(random_num) + str('@D_') + '{}'.format(user_tb.username).lower()
|
||||
user_tb.password = 'None'
|
||||
d_email = user_tb.email
|
||||
o_mail = user.email
|
||||
instance = UserDelete.objects.create(user=user_tb, d_email=d_email, old_email=o_mail,
|
||||
is_active=True, reason=data)
|
||||
user_tb.save()
|
||||
|
||||
class UserNotificationSerializer(serializers.ModelSerializer):
|
||||
"""User Notification serializer"""
|
||||
class Meta(object):
|
||||
"""Meta info"""
|
||||
model = UserNotification
|
||||
fields = '__all__'
|
||||
|
||||
|
||||
class UpdateUserNotificationSerializer(serializers.ModelSerializer):
|
||||
"""Update User Notification serializer"""
|
||||
class Meta(object):
|
||||
"""Meta info"""
|
||||
model = UserNotification
|
||||
fields = ['push_notification', 'email_notification', 'sms_notification']
|
||||
|
||||
def create(self, validated_data):
|
||||
instance = UserNotification.objects.filter(user=self.context).last()
|
||||
instance.push_notification = validated_data.get('push_notification',instance.push_notification)
|
||||
instance.email_notification = validated_data.get('email_notification', instance.email_notification)
|
||||
instance.sms_notification = validated_data.get('sms_notification', instance.sms_notification)
|
||||
instance.save()
|
||||
return instance
|
||||
|
||||
Reference in New Issue
Block a user