cambios profundos
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# May Hair Care — Landing Page + EasyAppointments
|
||||
# MAY Studio — Landing Page + EasyAppointments
|
||||
|
||||
Landing page bonita para May HairCare (Horta, Barcelona) con reservas gestionadas por **EasyAppointments**.
|
||||
Landing page bonita para MAY Studio (Horta, Barcelona) con reservas gestionadas por **EasyAppointments**.
|
||||
|
||||
El frontend (HTML/JS puro) sigue siendo el de la landing, pero **las reservas, clientes y servicios se gestionan completamente con EasyAppointments**.
|
||||
|
||||
@@ -64,11 +64,13 @@ El formulario permite seleccionar **varios servicios** (multi-checkbox).
|
||||
Cómo funciona actualmente con EasyAppointments:
|
||||
|
||||
- **UI**: Puedes seleccionar múltiples servicios. Se muestra el resumen con nombres unidos por "+" y la duración total sumada.
|
||||
- **Comprobación de disponibilidad**: Se consulta el endpoint de EA usando el servicio de **mayor duración** de los seleccionados. EA devuelve los slots libres según ese servicio + el horario del proveedor.
|
||||
- **Comprobación de disponibilidad**: Se consulta el endpoint de EA usando el servicio de **mayor duración** de los seleccionados. Luego se filtra client-side para exigir un bloque contiguo de la **duración total** (suma de todos).
|
||||
- Ejemplo: servicios de 45min + 30min → total 75 min. Solo se ofrecen horas de inicio desde las que quepan 75 min seguidos sin solape.
|
||||
- **Al crear la reserva**:
|
||||
- Se crea **una sola cita** en EasyAppointments.
|
||||
- Se usa como `serviceId` el servicio de mayor duración (para que coincida con la disponibilidad consultada).
|
||||
- Se calcula la hora de fin sumando la **duración total** de todos los servicios seleccionados.
|
||||
- Se calcula la hora de fin sumando la **duración total** de todos los servicios seleccionados y se envía explícitamente el campo `end`. Así EA bloquea el tiempo completo en el calendario de la empleada.
|
||||
- Solo una empleada (May) por ahora → el bloque queda reservado y no se puede reservar otra cosa en ese intervalo.
|
||||
- En el campo `notes` se guarda el detalle completo:
|
||||
```
|
||||
Nombre: ...
|
||||
|
||||
Reference in New Issue
Block a user