@extends('layouts.app', ['class' => 'g-sidenav-show bg-gray-100']) @section('content') @php $revisionStatusTop = strtolower(trim((string) ($list->revision_status ?? 'none'))); $revisionEmailSentTop = !empty($list->revision_email_sent_at); $isRevisionProcessActiveTop = $revisionStatusTop === 'requested'; $isWaitingRevisionTop = $revisionStatusTop === 'requested' && $revisionEmailSentTop; @endphp @include('layouts.navbars.auth.topnav', ['title' => ''])
@if (!$fromDashboard) @endif
@csrf @if (in_array($user->idroles, ['admins', 'hrdcek'])) @method('PUT') @endif

Detail {{ $title_menu }} : {{ $beasiswa->id_pengajuan }}

@if ($user->idroles === 'admins')
HRD: @if ($list->is_approved_by_hrd == '1') SETUJU @elseif ($list->is_approved_by_hrd == '2') TOLAK @else PENDING @endif HEAD HRD: @if ($list->is_approved_by_headhrd == '1') SETUJU @elseif ($list->is_approved_by_headhrd == '2') TOLAK @else PENDING @endif SP: @if ($list->is_approved_by_sp == '1') SETUJU @elseif ($list->is_approved_by_sp == '2') TOLAK @else PENDING @endif
@elseif ($user->idroles === 'hrdcek') @if ($list->is_approved_by_hrd == '1') SETUJU @elseif ($list->is_approved_by_hrd == '2') TOLAK @else PENDING @endif @elseif ($user->idroles === 'headhr') @if ($list->is_approved_by_headhrd == '1') SETUJU @elseif ($list->is_approved_by_headhrd == '2') TOLAK @else PENDING @endif @elseif ($user->idroles === 'sp') @if ($list->is_approved_by_sp == '1') SETUJU @elseif ($list->is_approved_by_sp == '2') TOLAK @else PENDING @endif @endif

@php $dmenu = 'trbea'; $idencrypt = encrypt($list->id_trs_beasiswa); $url_menu = '/trbea'; /* |-------------------------------------------------------------------------- | Gunakan $list untuk seluruh kolom trs_pengajuan_beasiswa |-------------------------------------------------------------------------- | $beasiswa berasal dari join tb.*, kar.*, dan lam.* sehingga kolom | seperti isactive berpotensi tertimpa. |-------------------------------------------------------------------------- */ $currentRole = strtolower(trim((string) $user->idroles)); $revisionStatus = strtolower(trim((string) ($list->revision_status ?? 'none'))); $trsStatus = strtolower(trim((string) ($list->trs_status ?? ''))); $revisionEmailSent = !empty($list->revision_email_sent_at); $isWaitingRevision = $revisionStatus === 'requested' && $revisionEmailSent; $isRevisionEmailFailed = $revisionStatus === 'requested' && !$revisionEmailSent; /* |-------------------------------------------------------------------------- | KONDISI HRD |-------------------------------------------------------------------------- */ /* * Pengajuan masih berada di tahap HRD dan belum diputuskan. * * Kondisi ini menghasilkan 3 action: * - Ajukan Revisi * - Approve * - Reject */ $isHrdPending = (string) ($list->is_approved_by_hrd ?? '0') === '0' && (string) ($list->isactive ?? '1') === '1'; /* * Pengajuan sebelumnya sudah ditolak HRD. * * Kondisi ini tetap boleh Ajukan Revisi jika ternyata * penolakan sebelumnya salah. */ $isHrdRejected = (string) ($list->is_approved_by_hrd ?? '0') === '2' && $trsStatus === 'canceled' && (string) ($list->isactive ?? '1') === '0'; /* |-------------------------------------------------------------------------- | TOMBOL REVISI |-------------------------------------------------------------------------- | | Revisi boleh dilakukan: | | 1. Sebelum HRD memutuskan | 2. Setelah HRD salah melakukan reject | | Hanya HRD Checker / Admin. |-------------------------------------------------------------------------- */ $canRequestRevision = in_array($currentRole, ['hrdcek', 'admins'], true) && ($isHrdPending || $isHrdRejected) && (string) ($list->is_finished_by_finance ?? '0') !== '1' && (string) ($list->is_rejected_by_finance ?? '0') !== '1' && !$isWaitingRevision && $revisionStatus !== 'submitted'; /* |-------------------------------------------------------------------------- | LABEL TOMBOL |-------------------------------------------------------------------------- */ if ($isRevisionEmailFailed) { $revisionButtonText = 'Kirim Ulang Permintaan Revisi'; } elseif ($isHrdRejected) { $revisionButtonText = 'Ajukan Revisi'; } else { $revisionButtonText = 'Ajukan Revisi'; } /* |-------------------------------------------------------------------------- | Hak approval normal |-------------------------------------------------------------------------- */ $canApprove = false; if ($currentRole === 'admins') { $canApprove = ((string) $list->is_approved_by_hrd === '0' || ((string) $list->is_approved_by_hrd === '1' && (string) $list->is_approved_by_headhrd === '0') || ((string) $list->is_approved_by_headhrd === '1' && (string) $list->is_approved_by_sp === '0')) && (string) $beasiswa->periode_status === '1'; } elseif ( $currentRole === 'hrdcek' && (string) $list->is_approved_by_hrd === '0' && (string) $beasiswa->periode_status === '1' ) { $canApprove = true; } elseif ( $currentRole === 'headhr' && (string) $list->is_approved_by_hrd === '1' && (string) $list->is_approved_by_headhrd === '0' && (string) $beasiswa->periode_status === '1' ) { $canApprove = true; } elseif ( $currentRole === 'sp' && (string) $list->is_approved_by_headhrd === '1' && (string) $list->is_approved_by_sp === '0' && (string) $beasiswa->periode_status === '1' ) { $canApprove = true; } /* |-------------------------------------------------------------------------- | Tidak boleh approve/reject saat menunggu revisi |-------------------------------------------------------------------------- */ if ($isWaitingRevision) { $canApprove = false; } @endphp @if ($beasiswa)
Keterangan
@if ($user->idroles == 'hrdcek' && @$beasiswa->is_rejected_by_finance == '1') @endif
Role Status Tanggal Approval Notes
HRD Checker @if ($beasiswa->is_approved_by_hrd == '1') SETUJU @elseif($beasiswa->is_approved_by_hrd == '2') TOLAK @else PENDING @endif {{ $beasiswa->hrd_approved_at ?? '-' }} {{ $beasiswa->hrd_notes ?? '-' }}
Head of HRD @if ($beasiswa->is_approved_by_headhrd == '1') SETUJU @elseif($beasiswa->is_approved_by_headhrd == '2') TOLAK @else PENDING @endif {{ $beasiswa->headhrd_approved_at ?? '-' }} {{ $beasiswa->headhrd_notes ?? '-' }}
Ketua Serikat Pekerja @if ($beasiswa->is_approved_by_sp == '1') SETUJU @elseif($beasiswa->is_approved_by_sp == '2') TOLAK @else PENDING @endif {{ $beasiswa->sp_approved_at ?? '-' }} {{ $beasiswa->sp_notes ?? '-' }}
Finance TOLAK {{ $beasiswa->finance_rejected_at ?? '-' }} {{ $beasiswa->finance_notes ?? '-' }}
Informasi Orang Tua/Wali
Informasi Anak

*) Sesuai KK

*) Sesuai Rekening

Pendidikan Anak
@php $jenjangs = DB::table('sys_enum') ->select('value', 'name') ->where('idenum', 'jenis_pendidikan') ->where('isactive', '1') ->get(); @endphp @foreach ($jenjangs as $j)
jenis_pendidikan) == $j->value ? 'checked' : '' }} required style="border-color: #dee2e6 !important;">
@endforeach

*) Nama Lengkap Sekolah/Universitas

{{ '*) SD-SMA: min. 92 | D1-S1 Negeri: min. 3.30 | D1-S1 Swasta: min. 3.50' }}

Berkas
{{-- --}}
Maksimal Size: 4096 KB
Format File: .pdf / .jpg / .jpeg / .png
Maksimal Size: 4096 KB
Format File: .pdf / .jpg / .jpeg / .png
Maksimal Size: 4096 KB
Format File: .pdf / .jpg / .jpeg / .png
@php $transkrip_files = $beasiswa->transkrip_nilai ? explode(',', $beasiswa->transkrip_nilai) : []; @endphp @foreach ($transkrip_files as $index => $file) @endforeach
Maksimal Size: 4096 KB
Format File: .pdf / .jpg / .jpeg / .png
@if ($canRequestRevision || $isRevisionEmailFailed || $canApprove)
{{-- Untuk data lama yang status requested tetapi email belum terkirim --}} @if ($isRevisionEmailFailed)
Email permintaan revisi belum terkirim
Silakan kirim ulang permintaan revisi kepada karyawan.
@endif {{-- HRD Checker / Admin --}} @if ($canRequestRevision) @endif {{-- Approval normal --}} @if ($canApprove) @endif
@endif
@else
Data beasiswa tidak ditemukan!
@endif
@if ($jsmenu == '1') @if (view()->exists("js.{$dmenu}")) @push('addjs') @include('js.' . $dmenu) @endpush @else @push('addjs') @endpush @endif @endif @endsection @push('css') @endpush @push('js') @endpush