Update notif_dispatch.go

This commit is contained in:
Lizandro Guarnizo
2026-05-16 16:11:36 -05:00
parent 1b22cc2fe7
commit 45928cbdbb
+56 -6
View File
@@ -13,9 +13,34 @@ func DispatchTicketNuevo(ticket *models.ProyectoTicket, portalUser *models.Porta
if ticket == nil || portalUser == nil {
return
}
msg := fmt.Sprintf("🎫 <b>Nuevo ticket</b>\nProyecto: <b>%s</b>\nCliente: %s\nTítulo: <b>%s</b>\n\n%s",
proyectoNombre, ticket.AutorNombre, ticket.Titulo, ticket.Descripcion)
sendTelegramAdmin(msg)
cfg := models.GetNotifConfig("ticket_nuevo", "admin")
if cfg == nil {
return
}
ticketURL := "/app/tickets"
titulo := fmt.Sprintf("Nuevo ticket: %s", ticket.Titulo)
cuerpo := fmt.Sprintf("Cliente: %s\nProyecto: %s\n%s", ticket.AutorNombre, proyectoNombre, ticket.Descripcion)
if cfg.CanalSistema {
_ = models.CreateSistemaNotif(&models.SistemaNotificacion{
TipoUsuario: "admin",
UsuarioID: 0,
Titulo: titulo,
Cuerpo: cuerpo,
Url: ticketURL,
Icono: "🎫",
})
}
if cfg.CanalEmail {
if adminEmail := getAdminEmail(); adminEmail != "" {
go SendTicketNuevoAdmin(adminEmail, proyectoNombre, ticket.AutorNombre, ticket.Titulo, ticket.Descripcion, ticketURL)
}
}
if cfg.CanalTelegram {
msg := fmt.Sprintf("🎫 <b>Nuevo ticket</b>\nProyecto: <b>%s</b>\nCliente: %s\nTítulo: <b>%s</b>\n\n%s",
proyectoNombre, ticket.AutorNombre, ticket.Titulo, ticket.Descripcion)
sendTelegramAdmin(msg)
}
}
// ─── DispatchTicketRespuestaCliente ──────────────────────────────────────────
@@ -24,9 +49,34 @@ func DispatchTicketRespuestaCliente(ticket *models.ProyectoTicket, contenido str
if ticket == nil {
return
}
msg := fmt.Sprintf("💬 <b>Respuesta de cliente</b>\nProyecto: <b>%s</b>\nCliente: %s\n\n%s",
proyectoNombre, ticket.AutorNombre, contenido)
sendTelegramAdmin(msg)
cfg := models.GetNotifConfig("ticket_respuesta_cliente", "admin")
if cfg == nil {
return
}
ticketURL := "/app/tickets"
titulo := fmt.Sprintf("Respuesta de cliente en: %s", ticket.Titulo)
cuerpo := fmt.Sprintf("Cliente: %s\nProyecto: %s\n%s", ticket.AutorNombre, proyectoNombre, contenido)
if cfg.CanalSistema {
_ = models.CreateSistemaNotif(&models.SistemaNotificacion{
TipoUsuario: "admin",
UsuarioID: 0,
Titulo: titulo,
Cuerpo: cuerpo,
Url: ticketURL,
Icono: "💬",
})
}
if cfg.CanalEmail {
if adminEmail := getAdminEmail(); adminEmail != "" {
go SendTicketRespuestaAdmin(adminEmail, proyectoNombre, ticket.AutorNombre, ticket.Titulo, contenido, ticketURL)
}
}
if cfg.CanalTelegram {
msg := fmt.Sprintf("💬 <b>Respuesta de cliente</b>\nProyecto: <b>%s</b>\nCliente: %s\n\n%s",
proyectoNombre, ticket.AutorNombre, contenido)
sendTelegramAdmin(msg)
}
}
// ─── DispatchTicketRespuestaAdmin ─────────────────────────────────────────────