feat: registrar proyectos con fases, adjuntar documentos y asignar tareas por Telegram

- crear_fase_proyecto: agrega fases/etapas a un proyecto (se puede llamar
  varias veces seguidas para cargar todas las fases de un proyecto nuevo).
- adjuntar_documento_proyecto: guarda el archivo que el usuario acaba de
  enviar por Telegram como documento del proyecto (mismo mecanismo de
  adjuntos ya usado para facturas — se generalizó TelegramAttachment para
  servir a ambos casos).
- listar_usuarios + asignado_id en crear_tarea + asignar_tarea: permite
  asignar tareas a alguien del equipo por Telegram, disparando la misma
  notificación (Telegram/email/sistema) que ya dispara el dashboard.
- El prompt del sistema ahora indica cómo decidir entre adjuntar_factura y
  adjuntar_documento_proyecto según el contexto del archivo recibido.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Lizandro GD
2026-08-03 02:11:02 +00:00
co-authored by Claude Sonnet 5
parent cd0ca6d232
commit a0b2e9ae0a
5 changed files with 278 additions and 45 deletions
@@ -132,7 +132,7 @@ func TelegramAgentWebhook(c *fiber.Ctx) error {
sendAgentReply(tgCfg.BotToken, chatID, "No pude descargar el archivo que enviaste, intenta de nuevo.")
return c.SendStatus(200)
}
services.StageFacturaAttachment(chatID, path, fileName, mimeType)
services.StageTelegramAttachment(chatID, path, fileName, mimeType)
nota := fmt.Sprintf("[Documento adjunto recibido: %s]", fileName)
switch {
case caption != "":