login setup client added

This commit is contained in:
2025-05-13 21:08:09 +03:00
parent 015a84ccf6
commit b15f58c319
368 changed files with 12644 additions and 19 deletions

View File

@@ -19,10 +19,10 @@ COPY /api_services/schemas /schemas
COPY /api_services/api_modules /api_modules
COPY /api_services/api_middlewares /api_middlewares
COPY /api_services/api_builds/auth-service/endpoints /api_initializer/endpoints
COPY /api_services/api_builds/auth-service/events /api_initializer/events
COPY /api_services/api_builds/auth-service/validations /api_initializer/validations
COPY /api_services/api_builds/auth-service/index.py /api_initializer/index.py
COPY /api_services/api_builds/auth_service/endpoints /api_initializer/endpoints
COPY /api_services/api_builds/auth_service/events /api_initializer/events
COPY /api_services/api_builds/auth_service/validations /api_initializer/validations
# COPY /api_services/api_builds/auth_service/index.py /api_initializer/index.py
# Set Python path to include app directory
ENV PYTHONPATH=/ PYTHONUNBUFFERED=1 PYTHONDONTWRITEBYTECODE=1

View File

@@ -14,7 +14,6 @@ from validations.request.auth.validations import (
RequestForgotPasswordPhone,
RequestForgotPasswordEmail,
RequestVerifyOTP,
RequestApplication,
)
from events.auth.events import AuthHandlers
from endpoints.index import endpoints_index

View File

@@ -1,7 +1,16 @@
from typing import Any, Union
from api_validations.token.validations import TokenDictType, EmployeeTokenObject, OccupantTokenObject, CompanyToken, OccupantToken, UserType
from api_validations.token.validations import (
TokenDictType,
EmployeeTokenObject,
OccupantTokenObject,
CompanyToken,
OccupantToken,
UserType
)
from api_controllers.redis.database import RedisActions
from api_modules.token.password_module import PasswordModule
from schemas import Users
@@ -24,7 +33,7 @@ class RedisHandlers:
@classmethod
def get_object_from_redis(cls, access_token: str) -> TokenDictType:
redis_response = RedisActions.get_json(list_keys=[RedisHandlers.AUTH_TOKEN, access_token, "*"])
redis_response = RedisActions.get_json(list_keys=[cls.AUTH_TOKEN, access_token, "*"])
if not redis_response.status:
raise ValueError("EYS_0001")
if redis_object := redis_response.first:
@@ -33,21 +42,21 @@ class RedisHandlers:
@classmethod
def set_object_to_redis(cls, user: Users, token, header_info):
result_delete = RedisActions.delete(list_keys=[RedisHandlers.AUTH_TOKEN, "*", str(user.uu_id)])
result_delete = RedisActions.delete(list_keys=[cls.AUTH_TOKEN, "*", str(user.uu_id)])
generated_access_token = PasswordModule.generate_access_token()
keys = [RedisHandlers.AUTH_TOKEN, generated_access_token, str(user.uu_id)]
keys = [cls.AUTH_TOKEN, generated_access_token, str(user.uu_id)]
RedisActions.set_json(list_keys=keys, value={**token, **header_info}, expires={"hours": 1, "minutes": 30})
return generated_access_token
@classmethod
def update_token_at_redis(cls, token: str, add_payload: Union[CompanyToken, OccupantToken]):
if already_token_data := RedisActions.get_json(list_keys=[RedisHandlers.AUTH_TOKEN, token, "*"]).first:
if already_token_data := RedisActions.get_json(list_keys=[cls.AUTH_TOKEN, token, "*"]).first:
already_token = cls.process_redis_object(already_token_data)
if already_token.is_employee and isinstance(add_payload, CompanyToken):
already_token.selected_company = add_payload
elif already_token.is_occupant and isinstance(add_payload, OccupantToken):
already_token.selected_occupant = add_payload
list_keys = [RedisHandlers.AUTH_TOKEN, token, str(already_token.user_uu_id)]
list_keys = [cls.AUTH_TOKEN, token, str(already_token.user_uu_id)]
result = RedisActions.set_json(list_keys=list_keys, value=already_token.model_dump(), expires={"hours": 1, "minutes": 30})
return result.first
raise ValueError("Something went wrong")