Note: Holiday | Day Off | Present | Half Day | Late | Absent | On Leave
@foreach ($dates as $date) @endforeach @foreach ($drivers as $driver) @php $total = 0; @endphp @foreach ($dates as $date) @php $today = Carbon\Carbon::today(); $dateObj = \Carbon\Carbon::parse($date); $dateString = $date->toDateString(); $attendance = $driver->attendances->first(function ($record) use ($dateString) { return $record->attendance_date->toDateString() === $dateString; }); $statusLabels = [ 'P' => '', 'H' => '', 'D' => '', 'HD' => '', 'L' => '', 'A' => '', 'LV' => '', ]; $status = $attendance->status ?? ($dateObj->lte($today) ? 'A' : null); $icon = $status ? ($statusLabels[$status] ?? '-') : '-'; if ($status === 'P') { $total++; } @endphp @endforeach @endforeach
Driver {{ \Carbon\Carbon::parse($date)->format('j') }}
{{ \Carbon\Carbon::parse($date)->format('D') }}
Total
{{ $driver->name }}
{{ $driver->name }} @if (auth()->id() === $driver->id) It's you @endif
{!! $icon !!} {{ $total }}/{{ \Carbon\Carbon::parse($dates->first())->daysInMonth }}