This commit is contained in:
Lizandro Guarnizo
2026-06-18 16:48:49 -05:00
parent fd410b3afc
commit ca6a44f64e
3 changed files with 29 additions and 0 deletions
+8
View File
@@ -150,6 +150,9 @@ func PortalDashboard(c *fiber.Ctx) error {
clienteIDs := models.GetClienteIDsForPortalUser(fullUser)
proyectos, _ := models.GetProyectosByClienteIDs(clienteIDs)
for i := range proyectos {
_ = models.ActualizarProgresoProyecto(proyectos[i].ID)
}
// Si partner: agrupar proyectos por cliente
type ClienteProyectos struct {
@@ -208,6 +211,7 @@ func PortalProyecto(c *fiber.Ctx) error {
avances, _ := models.GetAvancesByProyecto(proy.ID, true)
entregables, _ := models.GetEntregablesByProyecto(proy.ID, true)
tickets, _ := models.GetTicketsByPortalUser(u.ID)
_ = models.ActualizarProgresoProyecto(proy.ID)
return c.Render("portal/proyecto", fiber.Map{
"portalUser": fullUser,
@@ -230,6 +234,9 @@ func PortalGetProyectos(c *fiber.Ctx) error {
fullUser, _ := models.GetPortalUserByID(u.ID)
clienteIDs := models.GetClienteIDsForPortalUser(fullUser)
proyectos, _ := models.GetProyectosByClienteIDs(clienteIDs)
for i := range proyectos {
_ = models.ActualizarProgresoProyecto(proyectos[i].ID)
}
return c.JSON(proyectos)
}
@@ -265,6 +272,7 @@ func PortalGetProyectoData(c *fiber.Ctx) error {
facturas, _ := models.GetFacturasByCliente(proy.ClienteID, true)
facturasNoLeidas := models.CountUnreadFacturaNotifs(u.ID)
documentos, _ := models.GetDocumentosByProyecto(proy.ID)
_ = models.ActualizarProgresoProyecto(proy.ID)
return c.JSON(fiber.Map{
"proyecto": proy,
+6
View File
@@ -195,11 +195,13 @@ func CreateFase(c *fiber.Ctx) error {
return c.Status(500).JSON(fiber.Map{"error": err.Error()})
}
f.ParseEntregables()
_ = models.ActualizarProgresoProyecto(uint(proyID))
return c.Status(201).JSON(f)
}
func UpdateFase(c *fiber.Ctx) error {
faseID, _ := strconv.ParseUint(c.Params("faseID"), 10, 32)
proyID, _ := strconv.ParseUint(c.Params("id"), 10, 32)
type Req struct {
Nombre string `json:"nombre"`
Descripcion string `json:"descripcion"`
@@ -241,14 +243,17 @@ func UpdateFase(c *fiber.Ctx) error {
if err := models.UpdateProyectoFase(f); err != nil {
return c.Status(500).JSON(fiber.Map{"error": err.Error()})
}
_ = models.ActualizarProgresoProyecto(uint(proyID))
return c.JSON(fiber.Map{"ok": true})
}
func DeleteFase(c *fiber.Ctx) error {
faseID, _ := strconv.ParseUint(c.Params("faseID"), 10, 32)
proyID, _ := strconv.ParseUint(c.Params("id"), 10, 32)
if err := models.DeleteProyectoFase(uint(faseID)); err != nil {
return c.Status(500).JSON(fiber.Map{"error": err.Error()})
}
_ = models.ActualizarProgresoProyecto(uint(proyID))
return c.JSON(fiber.Map{"ok": true})
}
@@ -257,6 +262,7 @@ func ApplyTemplate(c *fiber.Ctx) error {
if err := models.ApplyFaseTemplate(uint(id)); err != nil {
return c.Status(500).JSON(fiber.Map{"error": err.Error()})
}
_ = models.ActualizarProgresoProyecto(uint(id))
fases, _ := models.GetFasesByProyecto(uint(id))
return c.JSON(fases)
}