@extends('layouts.app')
@section('title', 'Rekap Absensi Saya')
@section('content')
Rekap Absensi Harian Saya
Riwayat kehadiran harian Anda
{{-- Filter --}}
{{-- Summary --}}
@foreach([['label'=>'Hadir','key'=>'present','color'=>'green'],['label'=>'Terlambat','key'=>'late','color'=>'yellow'],['label'=>'Absen','key'=>'absent','color'=>'red'],['label'=>'Izin','key'=>'permission','color'=>'blue'],['label'=>'Sakit','key'=>'sick','color'=>'purple']]
as $stat)
{{ $summary[$stat['key']] ?? 0 }}
{{ $stat['label'] }}
@endforeach
{{-- Progress Bar --}}
@php $pct = $summary['total'] > 0 ? round(($summary['present'] + $summary['late']) / $summary['total'] * 100) : 0;
@endphp
Persentase Kehadiran
{{
$pct }}%
@if($pct < 75)
⚠️ Kehadiran Anda di bawah batas minimum 75%. Segera
konsultasikan dengan wali kelas.
@endif
| Tanggal |
Hari |
Check In |
Check Out |
Status |
Catatan |
@forelse($attendances ?? [] as $att)
@php
$statusColors = ['present' => 'green', 'late' => 'yellow', 'absent' => 'red', 'permission' => 'blue',
'sick' => 'purple'];
$statusValue = $att->status?->value ?? (string) $att->status;
$statusLabel = $att->status?->label() ?? ucfirst(str_replace('_', ' ', $statusValue));
@endphp
| {{ $att->date->format('d M Y') }}
|
{{ $att->date->translatedFormat('l') }} |
{{ $att->check_in_time ?
\Illuminate\Support\Carbon::parse((string) $att->check_in_time)->format('H:i') : '–' }} |
{{ $att->check_out_time ?
\Illuminate\Support\Carbon::parse((string) $att->check_out_time)->format('H:i') : '–' }} |
{{ $statusLabel }}
|
{{ $att->notes ?? '–' }} |
@empty
| Tidak ada data kehadiran |
@endforelse
@if(isset($attendances) && method_exists($attendances, 'hasPages') && $attendances->hasPages())
{{ $attendances->withQueryString()->links() }}
@endif
@endsection