feat: horarios opcionales en reservas, calendarios en lunes y emails filtrados
- Reservas: campos opcionales start_time/end_time (migración 011, schema natur_reservas) + toggle en el modal y detección de solapamiento por horario cuando ambas reservas los tienen definidos. Permite encajar varios eventos el mismo día. - Calendario mensual y anual ahora empiezan en lunes; vista móvil incluida. - Celdas con varios eventos el mismo día se dividen en franjas horizontales mostrando el horario; las reservas multi-día siguen ocupando la celda completa. - Modal: reset de campos vacíos (client_name, fechas, factura) para evitar que el nombre de la última reserva se filtre al crear una nueva. - Emails: las modificaciones solo disparan correo cuando cambian fechas u horas; el correo a Teneriffa pasa a formato reducido (solo fechas + propiedad) mientras que Natur sigue recibiendo el detalle completo. Mantenimiento sin cambios. - CLAUDE.md con guía operativa (schema natur_reservas, stack, convenciones). - Scripts de preview/envío de emails para pruebas. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
11
supabase/migrations/011_add_event_times.sql
Normal file
11
supabase/migrations/011_add_event_times.sql
Normal file
@@ -0,0 +1,11 @@
|
||||
-- Horarios opcionales de entrada/salida para cualquier reserva.
|
||||
-- Permite que dos reservas compartan el mismo día siempre que sus rangos horarios no se solapen
|
||||
-- (p. ej. una boda que termina a las 12:00 y un cumpleaños que empieza a las 17:00).
|
||||
-- Aplicable tanto a Naturcalabacera (eventos) como a Teneriffa.
|
||||
|
||||
ALTER TABLE natur_reservas.reservations
|
||||
ADD COLUMN IF NOT EXISTS start_time TIME,
|
||||
ADD COLUMN IF NOT EXISTS end_time TIME;
|
||||
|
||||
COMMENT ON COLUMN natur_reservas.reservations.start_time IS 'Hora de entrada (HH:mm). Opcional. Si está presente junto con end_time, se usa para detectar solapamientos por horario.';
|
||||
COMMENT ON COLUMN natur_reservas.reservations.end_time IS 'Hora de salida (HH:mm). Opcional. Si está presente junto con start_time, se usa para detectar solapamientos por horario.';
|
||||
Reference in New Issue
Block a user