REKAPITULASI JURNAL MENGAJAR

Periode: {{ $startDate }} s/d {{ $endDate }}

@php // Group journals by class name $grouped = $journals->groupBy(fn($j) => $j->class->name ?? 'N/A'); @endphp @foreach($grouped as $className => $items)
Kelas: {{ $className }}
@foreach($items as $index => $j) @endforeach
No Tanggal Mapel Guru Materi H/S/I/A
{{ $index + 1 }} {{ $j->date->format('d/m/Y') }} {{ $j->subject->name ?? 'N/A' }} {{ $j->teacher->name ?? 'N/A' }} {{ $j->material }} {{ count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Hadir')) }}/ {{ count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Sakit')) }}/ {{ count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Izin')) }}/ {{ count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Alfa')) }}
@php $totalHadir = $items->sum(fn($j) => count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Hadir'))); $totalSakit = $items->sum(fn($j) => count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Sakit'))); $totalIzin = $items->sum(fn($j) => count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Izin'))); $totalAlfa = $items->sum(fn($j) => count(array_filter($j->absent_list ?? [], fn($v) => $v === 'Alfa'))); @endphp

Total Kehadiran Kelas {{ $className }} → H: {{ $totalHadir }} / S: {{ $totalSakit }} / I: {{ $totalIzin }} / A: {{ $totalAlfa }}

@endforeach