Spaces:
Running
Running
File size: 899 Bytes
6a23285 | 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 | ```mermaid
sequenceDiagram
participant Cliente as Cliente API/Vue
participant Servicio as Servicio
participant DAO as UsuarioDao
participant Singleton as ConexionBD
participant BD as SQLite
Cliente->>Servicio: login(username, password)
Servicio->>DAO: login(username, password)
DAO->>Singleton: instancia()
Singleton-->>DAO: ConexionBD unica
DAO->>Singleton: obtener_conexion()
Singleton-->>DAO: sqlite3.Connection
DAO->>BD: SELECT WHERE username
BD-->>DAO: Row
DAO->>DAO: check_password_hash()
alt Contrasena OK
DAO->>DAO: generar token UUID
DAO->>BD: UPDATE session_token
BD-->>DAO: OK
DAO-->>Servicio: Usuario(id, username, token)
Servicio-->>Cliente: user Usuario
else Contrasena incorrecta
DAO-->>Servicio: None
Servicio-->>Cliente: error Credenciales invalidas
end
``` |