mirror of
https://github.com/marcogll/telegram_new_socias.git
synced 2026-01-13 13:15:16 +00:00
feat: Implementar registro de usuarios en base de datos dual
Este commit introduce las siguientes mejoras en el proceso de onboarding:
1. **Registro en Dos Fases**: El flujo de onboarding ahora registra a las nuevas usuarias en dos bases de datos distintas para mejorar la seguridad y la integridad de los datos:
* ****: Se crea un registro básico para la autenticación y el control de acceso del bot.
* ****: Se guarda un perfil completo y detallado de la empleada en la tabla .
2. **Modelos SQLAlchemy**: Se han actualizado los modelos de SQLAlchemy ( y ) para reflejar la estructura de las tablas de la base de datos.
3. **Lógica de Base de Datos Centralizada**: El módulo ahora contiene la lógica para gestionar el registro dual, asegurando que ambas operaciones se realicen de forma atómica.
4. **Flujo de Onboarding Actualizado**: El script de ha sido modificado para recopilar la información necesaria y pasarla al nuevo sistema de registro.
5. **Configuración de Docker**: Se ha ajustado el y los scripts de inicialización de la base de datos ( y ) para soportar el nuevo esquema de base de datos dual.
Estos cambios aseguran un proceso de registro más robusto, seguro y escalable, sentando las bases para futuras funcionalidades de RRHH.
This commit is contained in:
@@ -406,16 +406,15 @@ async def finalizar(update: Update, context: ContextTypes.DEFAULT_TYPE) -> int:
|
||||
|
||||
# --- REGISTRO EN BASE DE DATOS ---
|
||||
db_ok = register_user({
|
||||
**meta,
|
||||
**payload["metadata"],
|
||||
**payload["candidato"],
|
||||
**payload["contacto"]
|
||||
"meta": meta,
|
||||
**payload
|
||||
})
|
||||
|
||||
chat_id_log = payload.get("metadata", {}).get("chat_id", meta.get("telegram_id"))
|
||||
if db_ok:
|
||||
logging.info(f"Usuario {meta['chat_id']} registrado en la base de datos.")
|
||||
logging.info(f"Usuario {chat_id_log} registrado en la base de datos.")
|
||||
else:
|
||||
logging.error(f"Fallo al registrar usuario {meta['chat_id']} en la base de datos.")
|
||||
logging.error(f"Fallo al registrar usuario {chat_id_log} en la base de datos.")
|
||||
|
||||
if enviado:
|
||||
await update.message.reply_text(
|
||||
|
||||
Reference in New Issue
Block a user