|
|
|
|
|
from modules.database.database_init import get_database_client |
|
import logging |
|
|
|
logger = logging.getLogger(__name__) |
|
|
|
|
|
DATABASE_NAME = "user_database" |
|
USER_CONTAINER_NAME = "users" |
|
|
|
def get_user_container(): |
|
"""Obtiene el contenedor de usuarios.""" |
|
db_client = get_database_client(DATABASE_NAME) |
|
return db_client.get_container_client(USER_CONTAINER_NAME) |
|
|
|
def create_user(username, password, role): |
|
"""Crea un nuevo usuario.""" |
|
try: |
|
container = get_user_container() |
|
user_data = { |
|
"id": username, |
|
"password": password, |
|
"role": role |
|
} |
|
container.create_item(body=user_data) |
|
logger.info(f"Usuario creado: {username}") |
|
return True |
|
except Exception as e: |
|
logger.error(f"Error creando usuario: {e}") |
|
return False |
|
|
|
def get_user(username): |
|
"""Obtiene un usuario por su username.""" |
|
try: |
|
container = get_user_container() |
|
query = f"SELECT * FROM c WHERE c.id = '{username}'" |
|
items = list(container.query_items(query=query, enable_cross_partition_query=True)) |
|
return items[0] if items else None |
|
except Exception as e: |
|
logger.error(f"Error obteniendo usuario: {e}") |
|
return None |
|
|