package controllers import ( "strconv" "github.com/gofiber/fiber/v2" "github.com/sujit-baniya/fiber-boilerplate/pkg/models" ) // GetUmindVigilanciasHandler — GET /umind/vigilancias?agente_id=N func GetUmindVigilanciasHandler(c *fiber.Ctx) error { agenteID, _ := strconv.ParseUint(c.Query("agente_id"), 10, 64) if _, err := accesoAgente(c, uint(agenteID)); err != nil { return err } items, err := models.GetUmindVigilanciasByAgente(uint(agenteID)) if err != nil { return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{"error": err.Error()}) } return c.JSON(fiber.Map{"items": items}) } // DeleteUmindVigilanciaHandler — DELETE /umind/vigilancias/:id func DeleteUmindVigilanciaHandler(c *fiber.Ctx) error { id, err := strconv.ParseUint(c.Params("id"), 10, 64) if err != nil { return c.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "id inválido"}) } v, err := models.GetUmindVigilanciaByID(uint(id)) if err != nil { return errSinAcceso(c) } if _, err := accesoAgente(c, v.AgenteID); err != nil { return err } if err := models.DeleteUmindVigilancia(uint(id)); err != nil { return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{"error": err.Error()}) } return c.JSON(fiber.Map{"ok": true}) }