Corrige tablas faltantes en producción y bug de listado en Entidades

- AutoMigrate migraba ~50 modelos en un solo llamado que se detiene en
  el primer error, dejando todo lo posterior (plantillas_documento,
  tarifas, documentos_generados, arquitecturas, telegram_staff_tokens)
  sin tabla, en silencio. Ahora se migra modelo por modelo: uno roto
  ya no bloquea al resto.
- /app/contabilidad/entidades pedía datos a la misma URL de la página
  (devuelve HTML) en vez de /list (JSON) — el listado nunca traía nada.
- Mensaje de bienvenida del asistente: estaba generado por la IA cada
  vez con calidad variable; ahora es determinístico para /ayuda y
  /start, con redacción revisada, y el system prompt pide el mismo
  formato cuando el usuario solo saluda.
This commit is contained in:
Lizandro GD
2026-08-07 03:00:02 +00:00
parent 25cde836f1
commit 0eef3f80a3
4 changed files with 47 additions and 20 deletions
+12 -6
View File
@@ -61,8 +61,13 @@ func main() {
migrations.MigratePortal()
// Crear tabla de Landing Generator
migrations.MigrateLanding()
// Crear tablas de integraciones y pasarelas si no existen
if err := app.Http.Database.DB.AutoMigrate(
// Crear tablas de integraciones y pasarelas si no existen.
// AutoMigrate(a, b, c...) se detiene en el primer modelo que falle: todo lo
// que viene después en la lista se queda sin tabla, en silencio (fue la
// causa real de que plantillas_documento/tarifas desaparecieran de
// producción — un modelo antes en la lista falló y todo lo posterior no se
// llegó a crear). Migrando uno por uno, un modelo roto no bloquea al resto.
modelosBase := []interface{}{
// Tablas base del sistema (columnas nuevas)
&models.Users{},
&models.Roles{},
@@ -141,10 +146,11 @@ func main() {
&models.Arquitectura{},
// Vinculación de Telegram para staff interno
&models.TelegramStaffToken{},
); err != nil {
// AutoMigrate se detiene en el primer error: si esto falla, todos los
// modelos que venían después en la lista se quedan sin crear en silencio.
log.Printf("[MIGRATE] Error en AutoMigrate: %v", err)
}
for _, m := range modelosBase {
if err := app.Http.Database.DB.AutoMigrate(m); err != nil {
log.Printf("[MIGRATE] Error migrando %T: %v", m, err)
}
}
// Seed automático (idempotente) de módulos del sistema
migrations.SeedRenovaciones()