@extends('layouts.app') @section('content') @php $hasLeaveIndexRoute = \Illuminate\Support\Facades\Route::has('attendance.leave-requests.index'); $hasLeaveStoreRoute = \Illuminate\Support\Facades\Route::has('attendance.leave-requests.store'); @endphp @if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif

Absensi Karyawan

Absensi hanya bisa diproses jika posisi karyawan berada dalam radius lokasi yang sudah ditentukan.

@if($setting) Radius {{ $setting->radius_meters }} meter @if($setting->work_start_time) Masuk {{ substr($setting->work_start_time, 0, 5) }} @endif @if($setting->work_end_time) Pulang {{ substr($setting->work_end_time, 0, 5) }} @endif @else Lokasi belum diatur @endif @if(($canApproveLeaveRequests ?? false) && $hasLeaveIndexRoute) Approval Izin @if(($pendingLeaveRequestsCount ?? 0) > 0) ({{ $pendingLeaveRequestsCount }}) @endif @endif Rekap Bulanan

Absen Hari Ini

@if($employee?->is_auto_attendance ?? false) Auto Absen @endif
Karyawan: {{ $employee->name ?? 'Belum terhubung' }}
Masuk: {{ $attendance?->check_in_at?->format('H:i') ?? '-' }}
Pulang: {{ $attendance?->check_out_at?->format('H:i') ?? '-' }}
Telat: {{ ($attendance?->late_minutes ?? 0) > 0 ? $attendance->late_minutes . ' menit' : '-' }}
Pulang Cepat: {{ ($attendance?->early_leave_minutes ?? 0) > 0 ? $attendance->early_leave_minutes . ' menit' : '-' }}
@if($employee?->is_auto_attendance ?? false)
Akun ini menggunakan Auto Absen / Jam Flexible. Data absensi otomatis tercatat per hari dan hanya ditampilkan di Rekap Absensi.
@else
@csrf
@csrf

@endif

Pengajuan Izin

Izin tidak perlu mengikuti validasi lokasi GPS. Setelah disetujui SVP/Owner, data otomatis masuk rekap absensi.

@if($employee && $hasLeaveStoreRoute)
@csrf

Riwayat Izin Saya

@forelse(($myLeaveRequests ?? collect()) as $leave)
{{ $leave->leave_date?->format('d/m/Y') }} - {{ $leave->leave_type_label }}
{{ $leave->reason }}
@php($statusClass = $leave->status === 'approved' ? 'bg-success-50 text-success-700 dark:bg-success-500/15 dark:text-success-400' : ($leave->status === 'rejected' ? 'bg-error-50 text-error-700 dark:bg-error-500/15 dark:text-error-400' : 'bg-warning-50 text-warning-700 dark:bg-warning-500/15 dark:text-warning-400')) {{ $leave->status_label }}
@empty

Belum ada pengajuan izin.

@endforelse
@elseif($employee && ! $hasLeaveStoreRoute)
Pengajuan izin belum aktif karena route izin belum terdaftar. Halaman absensi tetap bisa digunakan normal.
@else
Akun ini belum terhubung ke data karyawan. Hubungkan user ke karyawan dulu agar bisa mengajukan izin.
@endif

Riwayat Absensi Manual

Data absensi manual terbaru. Akun Auto Absen hanya tampil di Rekap Absensi.

@forelse($attendances as $item) @empty @endforelse
Tanggal Karyawan Masuk Pulang Telat Pulang Cepat
{{ $item->attendance_date->format('d/m/Y') }} {{ $item->employee->name ?? '-' }} {{ $item->check_in_at?->format('H:i') ?? '-' }} {{ $item->check_out_at?->format('H:i') ?? '-' }} @if(($item->late_minutes ?? 0) > 0) {{ $item->late_minutes }} menit @else - @endif @if(($item->early_leave_minutes ?? 0) > 0) {{ $item->early_leave_minutes }} menit @else - @endif
Belum ada data absensi manual
{{ $attendances->links() }}
@endsection