@extends('layouts.app') @section('title', 'Data Absensi') @section('content')

@if(auth()->user()->isPegawai()) Absensi Saya @elseif(auth()->user()->isPimpinan()) Laporan Absensi @else Data Absensi @endif

@if(auth()->user()->isPegawai())

Riwayat absensi Anda

@elseif(auth()->user()->isPimpinan())

Rekapan laporan absensi pegawai (Read-Only)

@endif
@if(auth()->user()->isKepalaTataUsaha()) Tambah Import @endif @if(auth()->user()->isPimpinan()) Read-Only @endif
{{-- Grafik Absensi --}} @if(isset($chartData))
Trend Absensi (6 Bulan Terakhir)
Distribusi Status Absensi Bulan Ini
@endif
@if(auth()->user()->isKepalaTataUsaha() || auth()->user()->isPimpinan())
@endif
@forelse($absensi as $a) @php $telat = $a->hitungTelat(); $totalJamKerja = $a->hitungJamKerja(); $jamLembur = $a->hitungLembur(); $jamKerja = $a->getJamKerjaPerHari(); // Format jam kerja $jamKerjaText = '-'; if ($totalJamKerja !== null) { $jam = floor($totalJamKerja / 60); $menit = $totalJamKerja % 60; if ($jam > 0 && $menit > 0) { $jamKerjaText = "{$jam} jam {$menit} menit"; } elseif ($jam > 0) { $jamKerjaText = "{$jam} jam"; } elseif ($menit > 0) { $jamKerjaText = "{$menit} menit"; } else { $jamKerjaText = "0 menit"; } } @endphp @empty @endforelse
Tanggal Pegawai Jam Masuk Jam Keluar Jam Kerja Status Keterangan Aksi
{{ $a->tanggal->format('d/m/Y') }}
{{ $a->tanggal->locale('id')->dayName }}
{{ $a->pegawai->nama_lengkap }}
{{ $a->pegawai->nip }}
@if($a->jam_masuk) @php $jamMasukFormatted = $a->jam_masuk instanceof \Carbon\Carbon ? $a->jam_masuk->format('H:i') : date('H:i', strtotime($a->jam_masuk)); @endphp {{ $jamMasukFormatted }} @if($telat !== null && $telat > 0)
Telat {{ $a->status_telat }} @endif @else - @endif
@if($a->jam_keluar) @php $jamKeluarFormatted = $a->jam_keluar instanceof \Carbon\Carbon ? $a->jam_keluar->format('H:i') : date('H:i', strtotime($a->jam_keluar)); @endphp {{ $jamKeluarFormatted }} @if($a->status_lembur && $jamLembur > 0) @php $jam = floor($jamLembur / 60); $menit = $jamLembur % 60; if ($jam > 0 && $menit > 0) { $lemburText = "{$jam} jam {$menit} menit"; } elseif ($jam > 0) { $lemburText = "{$jam} jam"; } elseif ($menit > 0) { $lemburText = "{$menit} menit"; } else { $lemburText = "0 menit"; } @endphp
Lembur {{ $lemburText }} @endif @else - @endif
@if($totalJamKerja !== null) {{ $jamKerjaText }} @if($jamKerja) @php $jamNormal = floor($jamKerja['jam_kerja_menit'] / 60); $menitNormal = $jamKerja['jam_kerja_menit'] % 60; if ($jamNormal > 0 && $menitNormal > 0) { $normalText = "{$jamNormal} jam {$menitNormal} menit"; } elseif ($jamNormal > 0) { $normalText = "{$jamNormal} jam"; } elseif ($menitNormal > 0) { $normalText = "{$menitNormal} menit"; } else { $normalText = "0 menit"; } @endphp
Normal: {{ $normalText }} @endif @else - @endif
@php $statusColors = [ 'Hadir' => 'success', 'Izin' => 'info', 'Sakit' => 'warning', 'Cuti' => 'primary', 'Alpha' => 'danger', 'Terlambat' => 'warning' ]; $color = $statusColors[$a->status] ?? 'secondary'; @endphp {{ $a->status }} @if($telat !== null && $telat > 0) Terlambat @endif @if($a->status_lembur && $jamLembur > 0) Lembur @endif @if($a->keterangan) {{ Str::limit($a->keterangan, 50) }} @else - @endif @if($a->device_name)
{{ $a->device_name }} @endif
@if(auth()->user()->isKepalaTataUsaha())
@csrf @method('DELETE')
@endif
Tidak ada data absensi
{{ $absensi->links() }}
@push('scripts') @if(isset($chartData)) @endif @endpush @endsection