@extends('templates.app') @section('container')
Tanggal Shift
{{ $shift_karyawan->tanggal ?? '-' }}
Shift
{{ $shift_karyawan->Shift->nama_shift ?? '' }} ({{ $shift_karyawan->Shift->jam_masuk ?? '' }} - {{ $shift_karyawan->Shift->jam_keluar ?? '' }})


@csrf
@if (!$shift_karyawan)

Hubungi Admin Untuk Input Shift Anda

@elseif($shift_karyawan->status_absen == 'Libur')

Hari Ini Anda Libur

@elseif($shift_karyawan->status_absen == 'Cuti')

Hari Ini Anda Cuti

@elseif($shift_karyawan->status_absen == 'Izin Tidak Masuk')

Hari Ini Anda Izin

@else @php date_default_timezone_set('Asia/Jakarta'); $now = date("Y-m-d H:i"); $mulai = $shift_karyawan->tanggal; $jam_masuk = $shift_karyawan->Shift->jam_masuk; $jam_keluar = $shift_karyawan->Shift->jam_keluar; $masuk = DateTime::createFromFormat('H:i',$jam_masuk); $keluar = DateTime::createFromFormat('H:i',$jam_keluar); $mulaiDateTime = DateTime::createFromFormat('Y-m-d H:i',$mulai . ' ' . $jam_masuk); $akhirDateTime = DateTime::createFromFormat('Y-m-d H:i',$mulai . ' ' . $jam_keluar); $akhirs = $akhirDateTime; $nowDateTime = DateTime::createFromFormat('Y-m-d H:i', $now); if ($keluar <= $masuk) { $akhirs = $akhirDateTime->modify("+1 day"); } $limit1 = clone $mulaiDateTime; $limit2 = clone $akhirs; $limit3 = clone $akhirs; $limit1->modify('+1 hour'); // Batas absen masuk $limit2->modify('-1 hour'); // Batas absen pulang $limit3->modify('+2 hour'); // Batas absen limit pulang // Konversi ke timestamp $nowTimestamp = $nowDateTime ? $nowDateTime->getTimestamp() : null; $limit1Timestamp = $limit1->getTimestamp(); $limit2Timestamp = $limit2->getTimestamp(); $limit3Timestamp = $limit3->getTimestamp(); // Perbaiki logika Blade $isAbsenMasuk = $shift_karyawan->jam_absen == null; $isAbsenKehadiran = $shift_karyawan->jam_absen != null && $nowTimestamp >= $limit1Timestamp && $nowTimestamp <= $limit2Timestamp; $isAbsenPulang = $shift_karyawan->jam_pulang == null && $nowTimestamp >= $limit2Timestamp && $nowTimestamp < $limit3Timestamp; @endphp @if ($isAbsenMasuk)

Absen Masuk

@elseif ($isAbsenKehadiran)

Absen Kehadiran

@elseif ($isAbsenPulang)

Absen Pulang
Maximal : {{$limit3->format("Y-m-d H:i")}} WIB

@else

Anda Sudah Selesai Absen

@endif @endif





@push('script')
@endpush @endsection