File size: 1,319 Bytes
e9c9e38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# modules/database/sql_db.py

from modules.database.database_init import get_database_client
import logging

logger = logging.getLogger(__name__)

# Nombre de la base de datos y contenedor
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