change in admin login

This commit is contained in:
abutalib-kiwi
2023-08-08 14:29:57 +05:30
parent f3e2ab9a34
commit 10a1ea9b76

View File

@ -329,24 +329,17 @@ class UserLogin(viewsets.ViewSet):
@action(methods=['post'], detail=False) @action(methods=['post'], detail=False)
def admin_login(self, request): def admin_login(self, request):
username = request.data.get('username') email = request.data.get('email')
password = request.data.get('password') password = request.data.get('password')
user = authenticate(request, username=username, password=password) user = User.objects.filter(email__iexact=email, is_superuser=True
try: ).only('id', 'first_name', 'last_name', 'email', 'is_superuser').first()
if user is not None:
login(request, user) if not user:
if user.is_superuser: return custom_error_response(ERROR_CODE["2063"], response_status=status.HTTP_400_BAD_REQUEST)
serializer = SuperUserSerializer(user) elif not user.check_password(password):
return custom_response(SUCCESS_CODE['3003'], serializer.data, response_status=status.HTTP_200_OK) return custom_error_response(ERROR_CODE["2031"], response_status=status.HTTP_400_BAD_REQUEST)
else: serializer = SuperUserSerializer(user)
return custom_error_response(ERROR_CODE["2002"], response_status=status.HTTP_401_UNAUTHORIZED) return custom_response(SUCCESS_CODE['3003'], serializer.data, response_status=status.HTTP_200_OK)
except Exception as e:
logging.error(e)
refresh = RefreshToken.for_user(user)
access_token = str(refresh.access_token)
refresh_token = str(refresh)
data = {"auth_token": access_token, "refresh_token":refresh_token, "user_type": '3'}
return custom_response(None, data, response_status=status.HTTP_200_OK)
class AdminLoginViewSet(viewsets.GenericViewSet): class AdminLoginViewSet(viewsets.GenericViewSet):