diet - v1.0.0
    Preparing search index...

    Controlador de la entidad "Dieta". Maneja todas las operaciones RESTful relacionadas con la gestión de dietas, asegurando que solo el propietario de una dieta pueda modificarla o eliminarla. También se asegura de que solo usuarios autenticados puedan crear dietas.

    Además, emite notificaciones WebSocket al crear nuevas dietas para alertar a todos los clientes conectados.

    Index

    Constructors

    Properties

    service: default
    wsServer: any

    Methods

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      PUT /api/diet/:id

      Modifica los datos generales de una dieta, si pertenece al usuario autenticado.

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      PUT /api/diet/:id/day/:dia/comida

      Agrega una comida a un día de la dieta si pertenece al usuario. 📦 Ejemplo body: { nombre: "Ensalada", calorias: 120 }

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      PUT /api/diet/:id/day

      Agrega un nuevo día a la dieta si pertenece al usuario. 📦 Ejemplo body: { dia: "lunes", comidas: [] }

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      POST /api/diet

      Crea una nueva dieta asociada al usuario autenticado.

      Requiere estar logueado (req.user debe existir).

      🔐 Seguridad: evita que usuarios no logueados puedan crear dietas. 📦 Ejemplo de body: { "nombre": "Dieta Proteica", "descripcion": "Ideal para entrenamiento muscular", "menuSemanal": [] }

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      DELETE /api/diet/:id/day/:dia/comida?nombre=...

      Elimina una comida del día si pertenece al usuario autenticado. 📌 Se pasa el nombre de la comida como query param.

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      DELETE /api/diet/:id

      Elimina una dieta si pertenece al usuario autenticado. 🔐 Requiere autenticación y propiedad.

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      GET /api/diet/:id

      Obtiene una dieta específica por ID. 📦 Ejemplo: /api/diet/665f1f...abc

    • Parameters

      • req: any
      • res: any

      Returns any[]

      Listado de todas las dietas. 📌 No requiere autenticación.

      GET /api/diet

      Obtiene todas las dietas públicas.

    • Parameters

      • req: any
      • res: any

      Returns Promise<any>

      GET /api/diet/mis-dietas

      Lista todas las dietas creadas por el usuario autenticado. 🔐 Solo accesible si está logueado.