@extends('layouts.app') @section('title', 'Finalisasi Verifikasi — ' . $application->applicant_name) @section('content')
{{-- Header --}}
Finalisasi Verifikasi + CSL
{{ $application->applicant_name }} — {{ $application->id }}
{!! $application->status_badge !!}
@if(session('success'))
{{ session('success') }}
@endif @if($errors->any())
@endif {{-- Tabs --}}
{{-- ═══════════════════════════════════════════════════════════════ --}} {{-- TAB 1: RINGKASAN TABULASI DA + FA --}} {{-- ═══════════════════════════════════════════════════════════════ --}}
{{-- Ringkasan DA --}}
Desk Analysis
@php $da = $application->verifikasiDa; @endphp @if($da)
Verifikator: {{ $da->verifikator?->name ?? '-' }}
Status: {{ $da->isSubmitted() ? 'Submitted' : 'Draft' }}
Compliance: {{ $da->semua_compliance_accepted ? '8/8 Accepted' : 'Ada Rejected' }}
@if($da->catatan_da)
Catatan DA:
{{ $da->catatan_da }}
@endif @if($da->rekomendasi_plafond_da)
Rekomendasi DA: Rp {{ number_format($da->rekomendasi_plafond_da, 0, ',', '.') }} / {{ $da->rekomendasi_tenor_da ?? '-' }} bln
@endif @else
Data DA tidak ditemukan.
@endif
{{-- Ringkasan FA --}}
Field Analysis
@php $fa = $application->verifikasiFa; @endphp @if($fa)
PL: {{ $fa->pl?->name ?? '-' }}
Status: {{ $fa->isSubmitted() ? 'Submitted' : 'Draft' }}
Item tidak sesuai: {{ $fa->tidak_sesuai_count }} item
@if($fa->catatan_keseluruhan)
Catatan FA:
{{ $fa->catatan_keseluruhan }}
@endif @if($fa->penyesuaian_rekomendasi)
Penyesuaian:
{{ $fa->penyesuaian_rekomendasi }}
@endif @else
Data FA tidak ditemukan.
@endif
{{-- Tabulasi DA + FA --}}
Tabulasi DA + FA
@forelse($tabulasi as $row) @empty @endforelse
SumberItemStatusCatatan
{{ $row['sumber'] }} {{ $row['item'] }} @php $st = $row['status'] ?? '-'; @endphp @if(in_array($st, ['Accepted', 'lulus', 'sesuai'])) ✅ {{ ucfirst($st) }} @elseif(in_array($st, ['Rejected', 'tidak', 'tidak_valid'])) ❌ {{ ucfirst($st) }} @else {{ $st }} @endif {{ $row['catatan'] ?: '-' }}
Belum ada data tabulasi
{{-- ═══════════════════════════════════════════════════════════════ --}} {{-- TAB 2: CSL SCORING --}} {{-- ═══════════════════════════════════════════════════════════════ --}}
{{-- Hitung / hitung ulang CSL --}}
Kalkulasi CSL Scoring
@csrf
@if(!$application->hasilSlik)
Hasil SLIK belum diinput. CSL tidak bisa dihitung. Input SLIK di tab DA terlebih dahulu.
@elseif($cslScoring) {{-- Skor Total --}}
{{ number_format($cslScoring->skor_total, 1) }}
{!! $cslScoring->kategori_risiko_badge !!}
{{ $cslScoring->status_layak ? '✅ Layak diproses' : '❌ Tidak layak' }}
Dihitung: {{ $cslScoring->dihitung_pada?->format('d M Y H:i') }}
Breakdown Komponen
{{-- Eksternal --}}
Eksternal (SLIK/Pefindo)
Bobot 40% | Risk: {{ $application->hasilSlik?->risk_label }}
{{ $cslScoring->nilai_eksternal }}/100
Skor: {{ number_format($cslScoring->skor_eksternal, 2) }}
{{-- Financial --}}
Financial (RPC)
Bobot 30% | Rasio RPC/Angsuran: {{ number_format($cslScoring->rasio_rpc, 2) }}×
{{ $cslScoring->nilai_financial }}/100
Skor: {{ number_format($cslScoring->skor_financial, 2) }}
{{-- Non-Financial --}}
Non-Financial
Bobot 30% | 10 parameter
{{ number_format($cslScoring->skor_non_financial / 0.3, 1) }}/100
Skor: {{ number_format($cslScoring->skor_non_financial, 2) }}
{{-- 10 Non-Financial Parameters --}} @if($cslScoring->params_non_financial)
10 Parameter Non-Financial
@foreach($cslScoring->params_non_financial as $p) @endforeach
ParameterKategoriNilaiBobotWeighted
{{ $p['label'] }} {{ $p['kategori'] ?? '-' }} {{ $p['nilai'] }} {{ $p['bobot'] }} {{ number_format($p['weighted'], 4) }}
@endif {{-- Compliance --}}
8 Compliance Parameter
@foreach($cslScoring->compliance_params ?? [] as $i => $p) @endforeach
#ParameterStatusCatatan
{{ $i + 1 }} {{ $p['label'] }} {{ $p['status'] ?? '-' }} {{ $p['catatan'] ?? '-' }}
{{ $cslScoring->semua_compliance_accepted ? '✅ Semua compliance terpenuhi' : '❌ Ada compliance yang rejected' }} — CSL lolos jika semua 8 compliance = Accepted DAN skor ≥ 50.
@else
CSL belum dihitung. Klik tombol "Hitung CSL" di atas.
@endif
{{-- ═══════════════════════════════════════════════════════════════ --}} {{-- TAB 3: SUBMIT KE SIGNATURE --}} {{-- ═══════════════════════════════════════════════════════════════ --}}
Rekomendasi Final & Submit ke Signature
@csrf
Maks: Rp {{ number_format($application->plafond_diajukan ?? 0, 0, ',', '.') }} (plafond yang diajukan)
@error('rekomendasi_plafond_final')
{{ $message }}
@enderror
@error('rekomendasi_tenor_final')
{{ $message }}
@enderror
{{-- Status gate sebelum submit --}} @php $siapSubmit = $cslScoring !== null && $application->hasilSlik !== null; @endphp @if(!$siapSubmit)
Syarat submit belum terpenuhi:
    @if(!$application->hasilSlik)
  • SLIK belum diinput (di tab DA)
  • @endif @if(!$cslScoring)
  • CSL belum dihitung (di tab CSL)
  • @endif
@else {{-- Summary sebelum submit --}}
Skor CSL
{{ number_format($cslScoring->skor_total, 1) }}
Kategori
{!! $cslScoring->kategori_risiko_badge !!}
Compliance
{{ $cslScoring->semua_compliance_accepted ? '✅ OK' : '❌ Gagal' }}
Hasil
{{ $cslScoring->status_layak ? '✅ Layak' : '❌ Tidak Layak' }}
@csrf
@endif
{{-- end tab-content --}}
{{-- end card --}}
@endsection