@extends('layouts.app') @section('title', 'Rekap Presensi') @section('content')
{{-- Header --}}

Rekap Presensi

@if($type == 'daily') Rekap per jam pelajaran @elseif($type == 'weekly') Rekap per hari (Senin - Sabtu) @else Rekap per minggu @endif

Input Presensi
{{-- Tabs --}}
{{-- Filter --}}
@if($type == 'daily')
@elseif($type == 'weekly')
@else
@endif
{{-- ===== REKAP HARIAN ===== --}} @if($type == 'daily')

Rekap Harian — {{ \Carbon\Carbon::parse($date ?? now())->translatedFormat('l, d F Y') }}

{{ $students->count() }} siswa @if($className) • Kelas {{ $className }} @endif

@if($students->isNotEmpty())
@foreach($lessonHours as $hour) @endforeach @foreach($students as $student) @foreach($lessonHours as $hour) @php $key = $student->id . '-' . $hour; $att = $attendances->get($key); $status = $att ? $att->status : '-'; $color = match($status) { 'hadir' => 'text-emerald-600 bg-emerald-50', 'alpha' => 'text-red-600 bg-red-50', 'sakit' => 'text-purple-600 bg-purple-50', 'izin' => 'text-blue-600 bg-blue-50', 'terlambat' => 'text-yellow-600 bg-yellow-50', default => 'text-gray-300', }; $icon = match($status) { 'hadir' => 'H', 'alpha' => 'A', 'sakit' => 'S', 'izin' => 'I', 'terlambat' => 'T', default => '-', }; @endphp @endforeach @endforeach
SiswaJam {{ $hour }}

{{ $student->full_name }}

{{ $student->class_name }}

{{ $icon }}
H Hadir A Alpha S Sakit I Izin T Terlambat
@else

Pilih Kelas & Tanggal

Pilih kelas dan tanggal untuk melihat rekap harian

@endif
{{-- ===== REKAP MINGGUAN ===== --}} @elseif($type == 'weekly')

Rekap Mingguan — {{ \Carbon\Carbon::parse($start)->translatedFormat('d M') }} - {{ \Carbon\Carbon::parse($end)->translatedFormat('d M Y') }}

{{ $students->count() }} siswa @if($className) • Kelas {{ $className }} @endif

Export
@if($students->isNotEmpty())
@foreach($recap as $row) @php $sep = !$loop->last ? 'border-r-2 border-gray-300' : ''; @endphp @endforeach @foreach($recap as $row) @php $sep = !$loop->last ? 'border-r-2 border-gray-300' : ''; @endphp @endforeach @foreach($students as $student) @foreach($recap as $row) @php $s = $row['students'][$student->id] ?? null; $sep = !$loop->last ? 'border-r-2 border-slate-200' : ''; @endphp @if($s) @else @endif @endforeach {{-- TOTAL --}} @php $t = $totals[$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0]; @endphp @endforeach
Siswa {{ $row['label'] }}
{{ \Carbon\Carbon::parse($row['date'])->format('d/m') }}
TOTAL
Hari
H S I AH S I A

{{ $student->full_name }}

{{ $s['hadir'] }} {{ $s['sakit'] }} {{ $s['izin'] }} {{ $s['alpha'] }}— — — —{{ $t['hadir'] }} {{ $t['sakit'] }} {{ $t['izin'] }} {{ $t['alpha'] }}
H Hadir S Sakit I Izin A Alpha
@else

Pilih Kelas & Minggu

Pilih kelas dan minggu untuk melihat rekap mingguan

@endif
{{-- ===== REKAP BULANAN ===== --}} @else

Rekap Bulanan — {{ \Carbon\Carbon::create()->month($month)->format('F') }} {{ $year }}

{{ $students->count() }} siswa @if($className) • Kelas {{ $className }} @endif

Export
@if($students->isNotEmpty())
@foreach($recap as $row) @php $sep = !$loop->last ? 'border-r-2 border-gray-300' : ''; @endphp @endforeach @foreach($recap as $row) @php $sep = !$loop->last ? 'border-r-2 border-gray-300' : ''; @endphp @endforeach @foreach($students as $student) @foreach($recap as $row) @php $s = $row['students'][$student->id] ?? null; $sep = !$loop->last ? 'border-r-2 border-slate-200' : ''; @endphp @if($s) @else @endif @endforeach {{-- TOTAL --}} @php $t = $totals[$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0]; @endphp @endforeach
Siswa {{ $row['label'] }}
{{ \Carbon\Carbon::parse($row['start'])->format('d/m') }}-{{ \Carbon\Carbon::parse($row['end'])->format('d/m') }}
TOTAL
Hari
H S I AH S I A

{{ $student->full_name }}

{{ $s['hadir'] }} {{ $s['sakit'] }} {{ $s['izin'] }} {{ $s['alpha'] }}— — — —{{ $t['hadir'] }} {{ $t['sakit'] }} {{ $t['izin'] }} {{ $t['alpha'] }}
H Hadir S Sakit I Izin A Alpha
@else

Pilih Kelas & Bulan

Pilih kelas dan bulan untuk melihat rekap bulanan

@endif
@endif
@endsection