protected function updateTimeslots(Vacancy $vacancy) { $fromTime = $vacancy->start_at; $toTime = $vacancy->finish_at; $capacity = $vacancy->getAvailableCapacityBetween($fromTime->timezone('UTC'), $toTime->timezone('UTC')); $time = $fromTime->timezone($vacancy->business->timezone)->format('H:i:s'); $this->timetable->capacity($vacancy->date, $time, $vacancy->service->slug, $capacity); }
protected function updateTimeslots(Vacancy $vacancy, $step = 30) { $fromTime = $vacancy->start_at->timezone('UTC'); $toTime = $fromTime->copy(); $limit = $vacancy->finish_at; while ($fromTime <= $limit) { $toTime->addMinutes($step); $capacity = $vacancy->getAvailableCapacityBetween($fromTime, $toTime); $time = $fromTime->timezone($vacancy->business->timezone)->format('H:i:s'); $this->timetable->capacity($vacancy->date, $time, $vacancy->service->slug, $capacity); $fromTime->addMinutes($step); } }