From 67963bd395990cffa60462756772771cebf95370 Mon Sep 17 00:00:00 2001 From: andrei Date: Sun, 29 Jun 2025 11:36:32 +0500 Subject: [PATCH] =?UTF-8?q?feat:=20=D0=A3=D0=BB=D1=83=D1=87=D1=88=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=B0=D1=83=D1=82=D0=B5=D0=BD=D1=82=D0=B8=D1=84?= =?UTF-8?q?=D0=B8=D0=BA=D0=B0=D1=86=D0=B8=D1=8F=20=D0=B8=20=D0=BF=D1=80?= =?UTF-8?q?=D0=B8=D0=B2=D0=B0=D1=82=D0=BD=D1=8B=D0=B5=20=D0=BC=D0=B0=D1=80?= =?UTF-8?q?=D1=88=D1=80=D1=83=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix: Исправлены сообщения об ошибках аутентификации chore: Добавлена сортировка пользователей по ID --- api/app/application/users_repository.py | 1 + api/app/infrastructure/dependencies.py | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/api/app/application/users_repository.py b/api/app/application/users_repository.py index ed66f4d..333b0f3 100644 --- a/api/app/application/users_repository.py +++ b/api/app/application/users_repository.py @@ -15,6 +15,7 @@ class UsersRepository: stmt = ( select(User) .options(joinedload(User.role)) + .order_by(User.id) ) result = await self.db.execute(stmt) return result.scalars().all() diff --git a/api/app/infrastructure/dependencies.py b/api/app/infrastructure/dependencies.py index 15d0259..45e635b 100644 --- a/api/app/infrastructure/dependencies.py +++ b/api/app/infrastructure/dependencies.py @@ -21,17 +21,20 @@ async def get_current_user( try: payload = jwt.decode(credentials.credentials, auth_data["secret_key"], algorithms=[auth_data["algorithm"]]) except jwt.ExpiredSignatureError: - raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Token has expired") + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Срок действия токена истек") except jwt.InvalidTokenError: - raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid token") + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Неправильный токен") user_id = payload.get("user_id") if user_id is None: - raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid token") + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Неправильный токен") user = await UsersRepository(db).get_by_id_with_role(user_id) if user is None: - raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="User not found") + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Пользователь не найден") + + if user.is_blocked: + raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="Пользователь заблокирован") return user