startOfDay(); if ($workingDays === 0) { return $date; } $overrides = ProductionCalendarDay::query() ->pluck('is_working_day', 'date') ->map(static fn (mixed $value): bool => (bool) $value); $remaining = $workingDays; while ($remaining > 0) { $date = $date->addDay(); $key = $date->toDateString(); $isWorkingDay = $overrides->has($key) ? $overrides->get($key) : ! $date->isWeekend(); if ($isWorkingDay) { $remaining--; } } return $date; } }