diff --git a/src/pages/BookingsPage.tsx b/src/pages/BookingsPage.tsx index 2340dd6..2620b7e 100644 --- a/src/pages/BookingsPage.tsx +++ b/src/pages/BookingsPage.tsx @@ -199,6 +199,17 @@ export function BookingsPage() { ) } + // Step-1 modal: occupied slots for selected object + date + const pickObj = rentalObjects.find(o => o.id === rentalPickObj) + const pickBookings = rentalBookings.filter( + b => b.objectId === rentalPickObj && b.date === rentalPickDate && b.status === 'confirmed', + ) + const pickOpenMin = (pickObj?.openHour ?? 8) * 60 + const pickCloseMin = (pickObj?.closeHour ?? 22) * 60 + const pickTotalMin = pickCloseMin - pickOpenMin + const pickHasFullDay = pickBookings.some(b => b.isFullDay) + const fmtPickMin = (m: number) => `${Math.floor(m / 60)}:${String(m % 60).padStart(2, '0')}` + return (
+ Занятость · {new Intl.DateTimeFormat('ru-RU', { day: 'numeric', month: 'long' }).format(new Date(rentalPickDate))} +
+ {pickHasFullDay ? ( +