@extends('layouts.app') @section('title', 'Dashboard Karyawan') @section('page-title') Selamat Datang, {{ $employee->name }} @endsection @section('page-subtitle') NIK: {{ $employee->nik }} • Departemen: {{ $employee->department?->name ?? '-' }} • Jabatan: {{ $employee->position?->name ?? '-' }} @endsection @push('styles') @endpush @section('content')
{{-- Main Left Column --}}
{{-- Attendance Action Hero Card --}}
Presensi Geofencing GPS

Presensi Hari Ini

{{ now()->translatedFormat('l, d F Y') }}
Shift: {{ $shift ? $shift->name.' ('.\Carbon\Carbon::parse($shift->start_time)->format('H:i').' - '.\Carbon\Carbon::parse($shift->end_time)->format('H:i').' WIB)' : 'Reguler (08:00 - 17:00 WIB)' }}

@if(!$todayAttendance)
Anda belum melakukan presensi masuk hari ini.
@elseif(!$todayAttendance->check_out)
Sudah absen masuk pukul {{ \Carbon\Carbon::parse($todayAttendance->check_in)->format('H:i') }} WIB (Status: {{ $todayAttendance->status_label }}).
@else
Presensi hari ini telah lengkap (Masuk: {{ \Carbon\Carbon::parse($todayAttendance->check_in)->format('H:i') }} • Pulang: {{ \Carbon\Carbon::parse($todayAttendance->check_out)->format('H:i') }}).
@endif
{{-- Server Clock --}}
Waktu Server (WIB)
{{ now()->format('H') }}:{{ now()->format('i') }}:{{ now()->format('s') }}
Sinkronisasi Real-Time
{{-- 4 Stat Badges --}}
STATUS HARI INI
@if($todayAttendance) {{ $todayAttendance->status_label }} @else Belum Absen @endif
JAM MASUK
{{ $todayAttendance?->check_in ? \Carbon\Carbon::parse($todayAttendance->check_in)->format('H:i') : '--:--' }}
JAM PULANG
{{ $todayAttendance?->check_out ? \Carbon\Carbon::parse($todayAttendance->check_out)->format('H:i') : '--:--' }}
SISA CUTI
{{ $employee->leave_balance }} Hari
{{-- Recent Attendance History --}}
Riwayat Kehadiran Terakhir
Lihat Semua
@forelse($recentAttendances as $att) @empty @endforelse
Tanggal Masuk Pulang Status Keterlambatan
{{ \Carbon\Carbon::parse($att->attendance_date)->translatedFormat('d M Y') }} {{ $att->check_in ? \Carbon\Carbon::parse($att->check_in)->format('H:i') : '-' }} {{ $att->check_out ? \Carbon\Carbon::parse($att->check_out)->format('H:i') : '-' }} {{ $att->status_label }} @if($att->late_minutes > 0) +{{ $att->late_minutes }} Menit @else Tepat Waktu @endif
Belum ada riwayat absensi yang tercatat.
{{-- Right Column --}}
{{-- Profile Mini Card --}}
@if($employee->photo) Avatar @else
{{ strtoupper(substr($employee->name, 0, 2)) }}
@endif
{{ $employee->name }}

{{ $employee->email }}

{{ $employee->position?->name ?? 'Staff' }} {{ ucfirst($employee->employment_status) }}
Edit Profil Saya
{{-- Quick Leave Request Card --}}
Pengajuan Izin / Cuti
+ Ajukan
@forelse($recentLeaves as $leave)
{{ $leave->type_label }}
{{ \Carbon\Carbon::parse($leave->start_date)->format('d M') }} s/d {{ \Carbon\Carbon::parse($leave->end_date)->format('d M Y') }} ({{ $leave->total_days }} Hari)
{{ ucfirst($leave->status) }}
@empty
Belum ada pengajuan izin atau cuti aktif.
@endforelse
@endsection @push('scripts') @endpush