diff --git a/migrations/migrate.go b/migrations/migrate.go index ca66e8e..777aba9 100755 --- a/migrations/migrate.go +++ b/migrations/migrate.go @@ -126,7 +126,16 @@ func SeedRenovaciones() { } log.Printf("[SEED] Submódulo '%s' creado (ID %d)", e.title, sub.ID) } else { - log.Printf("[SEED] Submódulo '%s' ya existe (ID %d)", sub.Title, sub.ID) + // Asegurar que el submódulo apunte al módulo correcto (Renovaciones) + if sub.ModuleId != modulo.ID { + if err := db.Model(&sub).Update("module_id", modulo.ID).Error; err != nil { + log.Printf("[SEED] Error actualizando module_id de '%s': %v", sub.Title, err) + } else { + log.Printf("[SEED] Submódulo '%s' reasignado a módulo Renovaciones", sub.Title) + } + } else { + log.Printf("[SEED] Submódulo '%s' ya existe (ID %d)", sub.Title, sub.ID) + } } insertados = append(insertados, sub) } diff --git a/rest/routes/renovaciones.go b/rest/routes/renovaciones.go index dc73088..d4df8dd 100644 --- a/rest/routes/renovaciones.go +++ b/rest/routes/renovaciones.go @@ -2,6 +2,7 @@ package routes import ( "github.com/gofiber/fiber/v2" + "github.com/sujit-baniya/fiber-boilerplate/migrations" "github.com/sujit-baniya/fiber-boilerplate/rest/controllers" "github.com/sujit-baniya/fiber-boilerplate/rest/middlewares" ) @@ -60,4 +61,10 @@ func RenovacionesRoutes(protected fiber.Router) { protected.Get("/api/smtp-config", controllers.GetSmtpConfig) protected.Post("/api/smtp-config", controllers.SaveSmtpConfig) protected.Post("/api/smtp-config/test", controllers.TestSmtpConfig) + + // ─── Admin: seed de módulos (idempotente) ───────────────────────── + protected.Post("/api/admin/seed-renovaciones", func(c *fiber.Ctx) error { + migrations.SeedRenovaciones() + return c.JSON(fiber.Map{"ok": true, "message": "Seed de Renovaciones ejecutado correctamente"}) + }) }