diff --git a/core/apps/admin_panel/views/user.py b/core/apps/admin_panel/views/user.py index 01a8a24..add87b7 100644 --- a/core/apps/admin_panel/views/user.py +++ b/core/apps/admin_panel/views/user.py @@ -1,10 +1,9 @@ from django.shortcuts import get_object_or_404 - from rest_framework import generics, permissions, status, views from rest_framework_simplejwt.tokens import RefreshToken -from core.apps.admin_panel.serializers.user import UserSerializer, UserLoginSerializer from core.apps.accounts.models import User +from core.apps.admin_panel.serializers.user import UserLoginSerializer, UserSerializer from core.apps.shared.mixins.response import ResponseMixin @@ -18,14 +17,16 @@ class UserCreateApiView(generics.GenericAPIView, ResponseMixin): if serializer.is_valid(raise_exception=True): serializer.save() return self.success_response( - message='User qoshildi', status_code=status.HTTP_201_CREATED + message="User qoshildi", status_code=status.HTTP_201_CREATED ) - return self.error_response(data=serializer.errors, message='User qoshishda xatolik') - + return self.error_response( + data=serializer.errors, message="User qoshishda xatolik" + ) + class UserListApiView(generics.GenericAPIView, ResponseMixin): serializer_class = UserSerializer - queryset = User.objects.all() + queryset = User.objects.filter(is_superuser=False) permission_classes = [permissions.IsAdminUser] def get(self, request): @@ -35,8 +36,8 @@ class UserListApiView(generics.GenericAPIView, ResponseMixin): serializer = self.serializer_class(page, many=True) return self.get_paginated_response(serializer.data) serializer = self.serializer_class(users, many=True) - return self.success_response(data=serializer.data, message='userlar royxati') - + return self.success_response(data=serializer.data, message="userlar royxati") + class UserUpdateApiView(generics.GenericAPIView, ResponseMixin): serializer_class = UserSerializer @@ -45,11 +46,15 @@ class UserUpdateApiView(generics.GenericAPIView, ResponseMixin): def patch(self, request, id): user = get_object_or_404(User, id=id) - serializer = self.serializer_class(instance=user, data=request.data, partial=True) + serializer = self.serializer_class( + instance=user, data=request.data, partial=True + ) if serializer.is_valid(raise_exception=True): serializer.save() - return self.success_response(message='user tahrirlandi') - return self.failure_response(data=serializer.errors, message='user tahrirlashda xatolik') + return self.success_response(message="user tahrirlandi") + return self.failure_response( + data=serializer.errors, message="user tahrirlashda xatolik" + ) class UserDeleteApiView(generics.GenericAPIView, ResponseMixin): @@ -60,7 +65,9 @@ class UserDeleteApiView(generics.GenericAPIView, ResponseMixin): def delete(self, request, id): user = get_object_or_404(User, id=id) user.delete() - return self.success_response(message='user ochirildi', status_code=status.HTTP_204_NO_CONTENT) + return self.success_response( + message="user ochirildi", status_code=status.HTTP_204_NO_CONTENT + ) class UserDetailApiView(generics.GenericAPIView, ResponseMixin): @@ -71,7 +78,7 @@ class UserDetailApiView(generics.GenericAPIView, ResponseMixin): def get(self, request, id): user = get_object_or_404(User, id=id) serializer = self.serializer_class(user) - return self.success_response(data=serializer.data, message='user malumotlari') + return self.success_response(data=serializer.data, message="user malumotlari") class UserDashboardApiView(views.APIView, ResponseMixin): @@ -81,10 +88,10 @@ class UserDashboardApiView(views.APIView, ResponseMixin): admin_users = User.objects.filter(is_superuser=True).count() users = User.objects.filter(is_superuser=False).count() return self.success_response( - data={'admin_users': admin_users, 'users': users}, - message='userlar soni', + data={"admin_users": admin_users, "users": users}, + message="userlar soni", ) - + class UserLoginApiView(generics.GenericAPIView, ResponseMixin): serializer_class = UserLoginSerializer @@ -93,13 +100,12 @@ class UserLoginApiView(generics.GenericAPIView, ResponseMixin): def post(self, request): serializer = self.serializer_class(data=request.data) if serializer.is_valid(): - user = serializer.validated_data.get('user') + user = serializer.validated_data.get("user") token = RefreshToken.for_user(user) return self.success_response( - data={ - 'access': str(token.access_token), - 'refresh': str(token) - }, - message='user tizimga kirish muvaffaqiyatli yakunlandi' + data={"access": str(token.access_token), "refresh": str(token)}, + message="user tizimga kirish muvaffaqiyatli yakunlandi", ) - return self.failure_response(message='user tizimga kirishda xatolik', data=serializer.errors) \ No newline at end of file + return self.failure_response( + message="user tizimga kirishda xatolik", data=serializer.errors + )