Antylogic
Probar demoAcceso app

399 guías operativas

Secciones de Docs
DocsReservas
Dispositivo

Cómo ver el calendario de reservas

Revisa la agenda operativa de una ubicación desde la vista de reservas. En Marea Gran Via, la vista Semana reúne servicios, eventos privados y cierres por vacaciones; con permisos de reservas, las tarjetas muestran reservas, comensales, capacidad y estado del servicio.

En este artículo

El calendario de reservas es la pantalla para preparar la semana del local: muestra qué servicios están abiertos, dónde hay eventos privados y cuándo la ubicación está cerrada por vacaciones.

En la demo ES se documenta con Grupo Marea Demo / Marea Gran Via, en zona horaria Europe/Madrid, usando `/calendars/reservations?mode=week` para concentrar servicios y ocupación en un rango estable.

Antes de empezar

  • Sesión iniciada con organización y ubicación seleccionadas; en la demo ES usar Grupo Marea Demo y Marea Gran Via.
  • Abrir desde la navegación `Reservas` o con el enlace contextual `/:orgId/:locationId/calendars/reservations?mode=week`.
  • El rol debe poder entrar con `reservation:manage`, `reservation:view` o `service:view`.
  • Para que el backend devuelva servicios y eventos privados, el rol necesita permisos por tipo como `service:view`; los cierres de ubicación requieren `vacation:view`.
  • Para ver recuentos reales y abrir el detalle de una ocurrencia se necesita `reservation:view` o `reservation:manage`; `Nueva reserva` requiere `reservation:manage`.
  • Para capturas publicables usar el runtime ES `restaurant_full_v1-es`, con `SERVICE_OCCURRENCE_ID`, `RESERVATION_OCCURRENCE_ID` y la etiqueta `Javier Martin` disponibles.

Instrucciones

  1. 1.

    Abre Reservas

    Entra desde la navegación principal `Reservas` o abre el deep link de Marea Gran Via. La pantalla carga el preset de reservas y conserva el contexto de organización y ubicación.

  2. 2.

    Elige vista y fecha

    Usa Día, Semana, Mes o Año para revisar el rango operativo. Para documentación, la vista Semana es la más útil porque concentra servicios, privados, cierres y ocupación sin perder contexto.

  3. 3.

    Lee los bloques del calendario

    Cada bloque representa un evento operativo: `service` para servicios reservables, `private_event` para eventos privados y `location_vacation` para cierres de ubicación.

  4. 4.

    Comprueba ocupación

    Cuando el rol puede ver reservas, las tarjetas de servicio combinan ocurrencias y reservas asociadas para mostrar reservas, comensales, capacidad y estado operativo.

  5. 5.

    Actualiza la información

    Usa refrescar para volver a cargar eventos del calendario. Si la vista tiene permisos de reservas, también recarga ocurrencias de servicio y reservas por `occurrence_ids`.

  6. 6.

    Abre un servicio

    Toca una tarjeta de servicio para abrir el detalle de la ocurrencia con el mismo modo y fecha de retorno. Si falta `occurrenceId`, la app intenta resolver o materializar la ocurrencia antes de navegar.

  7. 7.

    Revisa privados y cierres

    Un `private_event` abre el editor del evento, en lectura si falta `service:manage`. Un `location_vacation` solo explica el cierre dentro del calendario y no navega a otra pantalla.

  8. 8.

    Crea una reserva

    Con `reservation:manage`, el botón `Nueva reserva` abre el flujo de optimización. Tras reservar, la vista refresca ocurrencias y reservas y puede llevar al detalle de la ocurrencia reservada.

Validaciones y límites

  • `mode` solo acepta `day`, `week`, `month` o `year`; cualquier otro valor cae a `month`.
  • `startDate` y `firstVisibleDate` inválidos se ignoran; la UI usa la fecha actual de la ubicación.
  • Sin `selectedOrgId` o `selectedLocationId`, la pantalla muestra `No encontramos la ubicacion solicitada.`
  • Sin permiso para la página, muestra `No tienes permisos para ver el calendario.`
  • El preset `reservations` muestra exactamente `service`, `private_event` y `location_vacation`.
  • Los recuentos operativos excluyen reservas con `status` `waitlist` o `cancelled`.
  • `GET /calendar-events` y `GET /calendar-events/feed` necesitan rangos de fechas válidos; las consultas de ocurrencias y reservas también rechazan rangos invertidos.
  • Abrir el detalle real de ocurrencia requiere `reservation:view` o `reservation:manage`; el botón `Nueva reserva` solo aparece con `reservation:manage`.
  • Si el usuario tiene `reservation:view` pero no `service:view`, puede pasar la puerta frontend, pero el backend puede no devolver `service` ni `private_event`.

Resultado esperado

El equipo de sala queda con una lectura semanal de servicios, reservas, capacidad y cierres de ubicación, y puede saltar desde el calendario al detalle operativo de una ocurrencia sin perder el rango de retorno.

Artículos relacionados