{{-- resources/views/admin/kepulangan/index.blade.php --}} @extends('layouts.app') @section('title', 'Data Kepulangan Santri') @section('content') {{-- Info Periode Kuota --}}

📅 Periode Kuota

{{ $settings->periode_mulai->format('d M Y') }} - {{ $settings->periode_akhir->format('d M Y') }}

📊 Kuota Maksimal

{{ $settings->kuota_maksimal }} Hari / Tahun

🔄 Terakhir Reset

{{ $settings->terakhir_reset ? $settings->terakhir_reset->format('d M Y') : 'Belum Pernah' }}

Kelola Pengaturan
{{-- Dashboard Cards --}}

Total Data

{{ $stats['total_data'] }}

Menunggu Approval

{{ $stats['menunggu_approval'] }}

Sedang Izin

{{ $stats['sedang_izin'] }}

Over Limit (>{{ $settings->kuota_maksimal }} Hari)

{{ $stats['over_limit_santri'] }}
@if($stats['over_limit_santri'] > 0) Lihat Detail @endif
{{-- Flash Messages --}} @if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif {{-- Main Content --}}
{{-- Header Actions --}}
Tambah Izin Kepulangan
{{-- Filter Section --}}
Reset
{{-- Data Table --}}
@forelse($kepulangan as $item) @php $isOverLimit = isset($santriOverLimit[$item->id_santri]); $totalHariTerpakai = $isOverLimit ? $santriOverLimit[$item->id_santri] : 0; @endphp @empty @endforelse
ID Santri Tanggal Pulang Tanggal Kembali Durasi Total Kuota Terpakai Alasan Status Aksi
{{ $item->id_kepulangan }} @if($isOverLimit) @endif
{{ $item->santri->nama_lengkap ?? 'N/A' }}
{{ $item->santri->id_santri ?? '' }} | {{ $item->santri->kelas ?? '' }}
{{ $item->tanggal_pulang_formatted }} {{ $item->tanggal_kembali_formatted }} {{ $item->durasi_izin }} hari @php $kuotaSantri = \App\Models\Kepulangan::getSisaKuotaSantri($item->id_santri); $badgeColor = $kuotaSantri['badge_color']; $badgeColors = [ 'success' => '#28a745', 'warning' => '#ffc107', 'danger' => '#dc3545' ]; $bgColor = $badgeColors[$badgeColor] ?? '#6c757d'; $textColor = $badgeColor == 'warning' ? '#000' : '#fff'; @endphp
{{ $kuotaSantri['total_terpakai'] }} / {{ $kuotaSantri['kuota_maksimal'] }} hari
Sisa: {{ $kuotaSantri['sisa_kuota'] }} hari ({{ $kuotaSantri['persentase'] }}%)
{{ $item->alasan }} {{ $item->status }} @if($item->is_aktif)
🏠 Sedang Izin @elseif($item->is_terlambat)
⏰ Terlambat @endif
@if($item->status == 'Menunggu') @endif @if($item->status == 'Disetujui') @endif @if(in_array($item->status, ['Menunggu', 'Ditolak'])) @endif

Tidak ada data kepulangan ditemukan

{{-- Pagination --}} @if($kepulangan->hasPages())
Menampilkan {{ $kepulangan->firstItem() ?? 0 }} - {{ $kepulangan->lastItem() ?? 0 }} dari {{ $kepulangan->total() }} data
{{ $kepulangan->appends(request()->query())->links() }}
@endif
{{-- Modals (sama seperti sebelumnya) --}} @endsection