Merge branch 'fix/past-slots-unavailable'
# Conflicts: # docs/api/appointment.md
This commit is contained in:
@@ -42,11 +42,13 @@ class SlotCalculatorService
|
||||
public function getAllSlotsWithAvailability(Doctor $doctor, string $date): array
|
||||
{
|
||||
$sessions = $this->buildAllSessions($doctor, $date);
|
||||
$now = time();
|
||||
return array_map(fn(array $session) => [
|
||||
'start_time' => $session['start_time'],
|
||||
'end_time' => $session['end_time'],
|
||||
'slots' => array_map(fn(array $slot) => array_merge($slot, [
|
||||
'is_available' => !$this->appointmentRepo->isSlotTaken($doctor, $slot['start'], $slot['end']),
|
||||
'is_available' => $slot['start'] >= $now
|
||||
&& !$this->appointmentRepo->isSlotTaken($doctor, $slot['start'], $slot['end']),
|
||||
]), $session['slots']),
|
||||
], $sessions);
|
||||
}
|
||||
@@ -248,8 +250,10 @@ class SlotCalculatorService
|
||||
|
||||
private function filterBookedSlots(Doctor $doctor, array $slots): array
|
||||
{
|
||||
$now = time();
|
||||
return array_values(array_filter($slots, fn(array $slot): bool =>
|
||||
!$this->appointmentRepo->isSlotTaken($doctor, $slot['start'], $slot['end'])
|
||||
$slot['start'] >= $now
|
||||
&& !$this->appointmentRepo->isSlotTaken($doctor, $slot['start'], $slot['end'])
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user