@extends('layouts.app', ['class' => 'g-sidenav-show bg-gray-100']) @section('content') @include('layouts.navbars.auth.topnav', ['title' => ''])
{{-- Filter / Pencarian --}}
Pencarian

Reset
{{-- Data Table --}}
{{ $title_menu }}
@include('components.alert')

@foreach ($table_header as $header) @endforeach @php $departemenMap = $departemen_map ?? collect(); $detailMap = $detail_map ?? collect(); @endphp @foreach ($table_detail as $detail) @php $primary = ''; foreach ($table_primary as $p) { $primary == '' ? ($primary = $detail->{$p->field}) : ($primary = $primary . ':' . $detail->{$p->field}); } $vcount = $loop->iteration; @endphp @php $rowBgMap = [ 'draft' => '#f5f6f8', 'pending_atasan' => '#f3ecff', 'approved_atasan' => '#e8f7fb', 'pending_personalia' => '#fff4e8', 'approved_personalia' => '#c8f2d7', 'rejected_atasan' => '#fdecef', 'rejected_personalia' => '#fdecef', 'pending_hrd' => '#fff4e8', 'approved_hrd' => '#c8f2d7', 'rejected_hrd' => '#fdecef', 'cancelled' => '#eceff1', ]; $rowBg = $rowBgMap[$detail->status] ?? ''; @endphp @php $detailRows = $detailMap[$detail->id] ?? collect(); @endphp @foreach ($table_header as $field) @php $string = $field->field; @endphp @if ($field->type == 'join') @elseif ($field->type == 'enum') @elseif ($field->type == 'date') @else @endif @endforeach @endforeach
No Action Detail{{ $header->alias }}
{{ $vcount }}
{{ $detailRows->count() }} detail lembur Klik untuk menampilkan detail
@foreach ($detailRows as $d) @endforeach
No NIK Nama Departemen Tanggal Jam Durasi
{{ $loop->iteration }} {{ $d->detail_nik ?? '-' }} {{ $d->detail_nama ?? '-' }} {{ $d->detail_departemen ?? '-' }} {{ $d->tanggal_lembur ? \Carbon\Carbon::parse($d->tanggal_lembur)->format('j-M-Y') : '-' }} {{ $d->jam_mulai ? \Carbon\Carbon::parse($d->jam_mulai)->format('H:i') : '-' }} - {{ $d->jam_selesai ? \Carbon\Carbon::parse($d->jam_selesai)->format('H:i') : '-' }} {{ $d->jam_lembur ?? '-' }}
@if ($field->query != '') @php $q = $field->query; preg_match_all("/\[(\w+)\]/", $q, $matches); foreach ($matches[1] as $m) { $q = str_replace("[$m]", $detail->$m ?? '', $q); } $data_query = DB::select($q); @endphp @foreach ($data_query as $qr) @php $arr = array_values((array) $qr); @endphp @php $joinValue = $arr[0] ?? ''; @endphp @if (in_array(strtolower($string), ['id_departemen', 'departemen'])) {{ $departemenMap[$joinValue] ?? $joinValue }} @else {{ $joinValue }} @endif @endforeach @endif @php $rawValue = $detail->$string; $labelValue = $rawValue; if ($field->query != '') { $data_query = DB::select($field->query); foreach ($data_query as $qr) { $arr = array_values((array) $qr); if ($rawValue == ($arr[0] ?? null)) { $labelValue = $arr[1] ?? $rawValue; break; } } } $statusBadgeMap = [ 'draft' => 'Draft', 'pending_atasan' => 'Pending Atasan', 'approved_atasan' => 'Approved Atasan', 'pending_personalia' => 'Pending Personalia', 'approved_personalia' => 'Approved Personalia', 'rejected_personalia' => 'Rejected Personalia', 'rejected_atasan' => 'Rejected Atasan', 'pending_hrd' => 'Pending HRD (Legacy)', 'approved_hrd' => 'Approved HRD (Legacy)', 'rejected_hrd' => 'Rejected HRD (Legacy)', 'cancelled' => 'Cancelled', ]; @endphp @if (in_array(strtolower($string), ['id_departemen', 'departemen'])) {{ $departemenMap[$rawValue] ?? $labelValue }} @elseif (strtolower($string) == 'status') {!! $statusBadgeMap[$rawValue] ?? e($labelValue) !!} @else {{ $labelValue }} @endif {{ $detail->$string ? \Carbon\Carbon::parse($detail->$string)->format('j-M-Y') : '' }} @if (in_array(strtolower($string), ['id_departemen', 'departemen'])) {{ $departemenMap[$detail->$string] ?? $detail->$string }} @else {{ $detail->$string }} @endif
@endsection