{{-- Information Card --}}
Informasi Surat
@if($surat->nomor_surat) @endif @if($surat->nomor_agenda_keluar) @endif @if($surat->kategorisasi_tu) @endif @if($surat->selected_approvers && count($surat->selected_approvers) > 0) @endif @if($surat->signed_at && $surat->signer) @endif @if($surat->tuProcessor) @endif @if($surat->numbering_by_setum && !$surat->requiresPanglimaSignature()) @endif @php // Derive actual destination type from recipients if available $actualDestType = $surat->destination_type; if ($surat->recipients && $surat->recipients->count() > 0) { $hasInternal = $surat->recipients->where('recipient_type', 'internal')->count() > 0; $hasExternal = $surat->recipients->where('recipient_type', 'external')->count() > 0; if ($hasInternal && $hasExternal) { $actualDestType = 'both'; } elseif ($hasInternal) { $actualDestType = 'internal'; } elseif ($hasExternal) { $actualDestType = 'external'; } } @endphp @if($actualDestType) @endif @if($surat->forwardedByOperatorSmin) @endif @if($surat->forwardedByTu) @endif @if($surat->forwardedByPaurmin) @endif @if($surat->forwardedByKasmin) @endif @if($surat->setumProcessor) @endif
Nomor Draft {{ $surat->nomor_draft }}
Nomor Surat {{ $surat->nomor_surat }}
Nomor Agenda {{ $surat->nomor_agenda_keluar }}
Tanggal Surat {{ $surat->tanggal_surat ? $surat->tanggal_surat->format('d F Y') : '-' }}
Tanggal Dibuat {{ $surat->created_at->format('d F Y') }}
Perihal {{ $surat->perihal ?: '-' }}
Kategori @if($surat->kategori) {{ $surat->kategori->nama_kategori }} @else - @endif
Kategorisasi TU {{ $surat->kategorisasi_tu }}
Pembuat @if($surat->creator) {{ $surat->creator->satuan }} @else - @endif
Counter Paraf @php $selectedApprovers = \App\Models\User::whereIn('id', $surat->selected_approvers)->get()->sortBy(function($user) use ($surat) { return array_search($user->id, $surat->selected_approvers); }); $counterIndex = 0; @endphp @foreach($selectedApprovers as $idx => $approver) @php $counterIndex++; @endphp
{{ $counterIndex }}
{{ $approver->jabatan_short ?? $approver->jabatan }} ({{ $approver->satuan }})
@php $approval = $surat->approvals->where('approver_id', $approver->id)->sortByDesc('id')->first(); @endphp @if($approval) @endif
@endforeach {{-- Tampilkan Wapang approval jika TTD ke Panglima --}} @php // Cek apakah Wapang sudah ada di selected_approvers $wapangInSelected = $selectedApprovers->contains(function($approver) { return $approver->isWakilPanglima(); }); $wapangApproval = $surat->approvals->filter(function($approval) use ($selectedApprovers) { // Cari approval dari Wapang yang bukan dari selected_approvers $isInSelectedApprovers = $selectedApprovers->contains('id', $approval->approver_id); return !$isInSelectedApprovers && $approval->approver && $approval->approver->isWakilPanglima(); })->sortByDesc('id')->first(); @endphp @if($wapangApproval) @php $counterIndex++; @endphp
{{ $counterIndex }}
{{ $wapangApproval->approver->jabatan_short ?? $wapangApproval->approver->jabatan }} ({{ $wapangApproval->approver->satuan }}) - Wapang
@elseif(!$wapangInSelected && $surat->finalSigner && $surat->finalSigner->isPanglima() && in_array($surat->status, ['pending_wapang_approval', 'pending_pangwapang_signature', 'signed', 'pending_setum_numbering', 'pending_numbering', 'pending_send', 'sent', 'completed'])) {{-- Tampilkan pending Wapang HANYA jika Wapang belum ada di selected_approvers --}} @if($surat->status === 'pending_wapang_approval') @php $counterIndex++; @endphp
{{ $counterIndex }}
Wakil Panglima (Menunggu persetujuan)
@endif @endif
Pejabat TTD @if($surat->finalSigner) {{ $surat->finalSigner->jabatan_short ?? $surat->finalSigner->jabatan }}
{{ $surat->finalSigner->satuan }} @else - @endif
Ditandatangani {{ $surat->signed_at->format('d F Y H:i') }}
oleh {{ $surat->signer->jabatan_short ?? $surat->signer->jabatan }}
Diproses TU {{ $surat->tuProcessor->jabatan_short ?? $surat->tuProcessor->jabatan ?? $surat->tuProcessor->name }} @if($surat->tuProcessor->satuan) ({{ $surat->tuProcessor->satuan }}) @endif
Penomoran SETUM Dipilih oleh operator
Tipe Tujuan @if($actualDestType === 'both') Internal Eksternal @elseif($actualDestType === 'internal') Internal @else Eksternal @endif
Diteruskan Operator SMIN {{ $surat->forwardedByOperatorSmin->jabatan_short ?? $surat->forwardedByOperatorSmin->jabatan ?? $surat->forwardedByOperatorSmin->name }}
{{ $surat->forwarded_by_operator_smin_at ? $surat->forwarded_by_operator_smin_at->format('d/m/Y H:i') : '' }}
Diteruskan TU {{ $surat->forwardedByTu->jabatan_short ?? $surat->forwardedByTu->jabatan ?? $surat->forwardedByTu->name }}
{{ $surat->forwarded_by_tu_at ? $surat->forwarded_by_tu_at->format('d/m/Y H:i') : '' }}
Diteruskan PAURMIN {{ $surat->forwardedByPaurmin->jabatan_short ?? $surat->forwardedByPaurmin->jabatan ?? $surat->forwardedByPaurmin->name }}
{{ $surat->forwarded_by_paurmin_at ? $surat->forwarded_by_paurmin_at->format('d/m/Y H:i') : '' }}
Diteruskan KASMIN {{ $surat->forwardedByKasmin->jabatan_short ?? $surat->forwardedByKasmin->jabatan ?? $surat->forwardedByKasmin->name }}
{{ $surat->forwarded_by_kasmin_at ? $surat->forwarded_by_kasmin_at->format('d/m/Y H:i') : '' }}
Diproses SETUM {{ $surat->setumProcessor->jabatan_short ?? $surat->setumProcessor->jabatan ?? $surat->setumProcessor->name }}
{{ $surat->setum_processed_at ? $surat->setum_processed_at->format('d/m/Y H:i') : '' }}