Files
lpj/resources/views/penilai/components/print-out-standar.blade.php
Daeng Deni Mardaeni c8b5fcc9d1 🐛 fix(ui-print): Format nilai pasar wajar & tampilkan fakta migrasi
- Terapkan number_format(ID) (0 desimal, ',' desimal, '.' ribuan) untuk nilai pasar wajar Bagian 1
- print-out-sederhana: format nilai per kategori & nilai perbandingan (Bagian 1)
- print-out-standar: format nilai per kategori, nilai perbandingan (Bagian 1), dan nilai likuidasi
- Tambah section fakta khusus permohonan migrasi (is_mig) dengan tabel 'judul' per kategori
- Support konten fakta sebagai array/string; render dinamis & rapi
- Perbaiki logika tanggal laporan migrasi: fallback tgl_laporan → tgl_create → null
- Parsing tanggal migrasi via Carbon::createFromFormat('d/m/Y H:i:s') → 'Y-m-d H:i:s'
- Jaga konsistensi & keterbacaan angka besar (ribuan–miliaran) di semua laporan
2025-10-20 08:30:31 +07:00

485 lines
20 KiB
PHP

@include('lpj::penilai.components.header')
@php
$data = '';
$dokument = null;
foreach ($permohonan->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', ';
$jenisAset = $dokumen->jenisJaminan->name;
$dokument = $dokumen;
}
$data = rtrim($data, ', ');
@endphp
<main class="content">
@php
$senior_officer = null;
if ($permohonan->debiture && $permohonan->documents) {
foreach ($permohonan->documents as $dokumen) {
$penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first();
$teams = $permohonan->region->teams;
if ($teams) {
foreach ($teams as $team) {
$team_users = $team->teamsUsers;
// print_r($team_users);
if ($team_users) {
foreach ($team_users as $team_user) {
$user = $team_user->user;
if ($user && $user->hasRole('senior-officer')) {
$senior_officer = $user;
break 3;
}
}
}
}
}
}
}
@endphp
<div style="text-align: center; margin-top: 5px;">
<h4 style="text-transform: uppercase; font-size: 16px; margin: 0;">LAPORAN PENILAIAN ATAS
{{ $data }}</h4>
<p style="font-size: 12px; margin: 5px 0;">NO: {{ $nomorLaporan }}</p>
</div>
<hr />
<table style="width: 100%; ">
<tr>
<td style="vertical-align: top;">
<table>
<tr>
<td style="width: 25%; padding: 2px; vertical-align: top;">Cabang/Pemohon</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td style="vertical-align: top; vertical-align: top;">
{{ $permohonan->debiture->branch->name ?? '' }}
</td>
</tr>
<tr>
<td style="width: 25%; padding: 2px;">Tujuan Penilai</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="vertical-align: top; padding: 2px;">
{{ $permohonan->jenisFasilitasKredit->name ?? '' }}</td>
</tr>
<tr>
<td style="width: 25%; padding: 2px;">Ao</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="vertical-align: top; padding: 2px;">{{ $permohonan->user->name ?? $permohonan->mig_nama_ao ?? '' }}</td>
</tr>
</table>
</td>
<td style="vertical-align: top;">
<table>
<tr>
<td style="width: 25%; padding: 2px;">Tanggal Order</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="vertical-align: top; padding: 2px;">
{{ formatTanggalIndonesia($permohonan->tanggal_permohonan) }}</td>
</tr>
<tr>
<td style="width: 25%; padding: 2px;">Tanggal Penilaian</td>
<td style="vertical-align: top; width: 1%; padding: 2px;">:</td>
<td style="vertical-align: top; width: 79%;">
{{ formatTanggalIndonesia($permohonan->penilaian->waktu_penilaian) }}
</td>
</tr>
</table>
</td>
</tr>
</table>
<div class="no-break">
<table style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
IDENTITAS CADEB/DEBITUR
</td>
</tr>
</table>
<table style="width: 100%; ">
<tr>
<td style="width: 5%; padding: 2px; vertical-align: top;">Nama Debitur</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td style="vertical-align: top; ">{{ $permohonan->debiture->name ?? '' }}</td>
</tr>
<tr>
<td style="width: 25%; padding: 2px; vertical-align: top;">Debitur / Wakil Debitur</td>
<td style="width: 1%; vertical-align: top;">:</td>
@if (isset($forminspeksi['asset']['debitur_perwakilan']))
<td>
@if (is_array($forminspeksi['asset']['debitur_perwakilan']))
@foreach ($forminspeksi['asset']['debitur_perwakilan'] as $item)
{{ $item ?? $permohonan->debiture->name ?? '' }}<br>
@endforeach
@else
{{ $forminspeksi['asset']['debitur_perwakilan'] ?? $permohonan->debiture->name ?? '' }}
@endif
</td>
@endif
</tr>
<tr>
<td style="width: 25%; padding: 2px; vertical-align: top;">Pihak Bank selain Appraisal</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td style="vertical-align: top;">{{ $forminspeksi['asset']['pihak_bank'] ?? '' }}
</td>
</tr>
</table>
</div>
<div class="no-break">
<table style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
DESKRIPSI DAN ALAMAT ASET
</td>
</tr>
</table>
@if ($permohonan->is_mig == 1)
<table style="width: 100%; ">
@if (@isset($dokumen))
@foreach ($dokumen->detail as $detail)
@if (!empty($detail->name) && isset($detail->details) && !empty($detail->dokumen_jaminan))
<tr>
<td width="25%"><strong>{{ $detail->name ?? '' }}</strong></td>
</tr>
@endif
@if (isset($detail->details) && $detail->name == 'LOKASI JAMINAN')
@php
$details = json_decode($detail->details, true);
@endphp
@include('lpj::component.detail-lokasi', ['details' => $details])
@endif
@endforeach
@endif
</table>
@else
<table style="width: 100%; ">
<tr>
<td width="25%">Terletak di</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td> {{ $alamat['address'] ?? '' }}</td>
</tr>
<tr>
<td>Desa/Kelurahan</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td>{{ $alamat['village_code'] ?? '' }}</td>
</tr>
<tr>
<td>Kecamatan</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td>{{ $alamat['district_code'] ?? '' }}</td>
</tr>
<tr>
<td>Kabupaten/Kota</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td> {{ $alamat['city_code'] ?? '' }}</td>
</tr>
<tr>
<td>Provinsi</td>
<td style="width: 1%; vertical-align: top;">:</td>
<td>{{ $alamat['province_code'] ?? '' }}</td>
</tr>
</table>
@endif
</div>
{{-- <div class="no-break"> --}}
<table style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
DOKUMEN
</td>
</tr>
</table>
<table style="width: 100%; ">
@include('lpj::component.print-out-dokument')
</table>
{{-- </div> --}}
<div class="no-break">
<table style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
HUBUNGAN CADEB/DEBITUR DENGAN PEMILIK DAN PENGHUNI
</td>
</tr>
</table>
<table style="width:100%">
<tr>
@php
$cekHubDebitur = isset($forminspeksi['asset']['hub_cadeb']) &&
$forminspeksi['asset']['hub_cadeb'] === 'sesuai'
? 'sesuai'
: 'tidak sesuai';
$hubCadebDebitur = isset($forminspeksi['asset']['hub_cadeb'][$cekHubDebitur])
? $forminspeksi['asset']['hub_cadeb']['tidak sesuai']
: $forminspeksi['asset']['hub_cadeb']['sesuai'];
@endphp
<td style="width:25%; padding: 2px; vertical-align: top;">Hubungan Pemilik Jaminan dengan Debitur</td>
<td style="width:1%; padding: 2px; vertical-align: top;">:</td>
<td style=" padding: 2px; vertical-align: top;">{{ $cekHubDebitur ?? '' }}</td>
</tr>
<tr>
@php
$cekHub =
isset($forminspeksi['asset']['hub_cadeb_penghuni']) &&
$forminspeksi['asset']['hub_cadeb_penghuni'] === 'sesuai'
? 'sesuai'
: 'tidak sesuai';
$hubCadeb = isset($forminspeksi['asset']['hub_cadeb_penghuni'][$cekHub])
? ($forminspeksi['asset']['hub_cadeb_penghuni']['tidak sesuai'] ?? null)
: ($forminspeksi['asset']['hub_cadeb_penghuni']['sesuai'] ?? null);
@endphp
<td style=" padding: 2px; vertical-align: top;">Hubungan Penghuni Jaminan dengan Debitur</td>
<td style=" padding: 2px; vertical-align: top;">:</td>
<td style=" padding: 2px; vertical-align: top;">{{ $hubCadeb ?? '' }}</td>
</tr>
</table>
</div>
@if ($permohonan->is_mig)
@php $mig_detail_legalitas_jaminan = json_decode($inspeksi->mig_detail_legalitas_jaminan, true); @endphp
@foreach($mig_detail_legalitas_jaminan as $key => $items)
<table width="100%">
<tr>
<td colspan="3" style="border: 1px solid #000; text-align: center;">
{{ $key }}
</td>
</tr>
@foreach ($items as $item)
<tr>
<td style="padding: 2px; vertical-align: top;">{{ $item['label'] }}</td>
<td style="padding: 2px; vertical-align: top;">:</td>
<td style="padding: 2px; vertical-align: top;">{{ $item['value'] }}</td>
</tr>
@endforeach
</table>
@endforeach
@endif
@foreach ($permohonan->documents as $dokumen)
@if ($dokumen->jenisJaminan)
@php
$formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true);
@endphp
@if(!$permohonan->is_mig)
@if (isset($formKategori) && $formKategori)
@php
$kategoriArray = is_array($formKategori) ? $formKategori : [$formKategori];
$kategoriUnik = array_unique($kategoriArray);
@endphp
@foreach ($kategoriUnik as $kategori)
@include('lpj::penilai.components.analisa.' . str_replace('-', '-', $kategori), [
'dokumen' => $dokumen,
])
@endforeach
@endif
@endif
@endif
@endforeach
<div class="no-break">
<table style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
INFORMASI DATA PEMBANDING
</td>
</tr>
</table>
@if(isset($dataPembanding))
@include('lpj::penilai.components.print-pembanding')
@endif
</div>
<div class="no-break">
<table style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
TOTAL NILAI PASAR WAJAR
</td>
</tr>
</table>
<table>
<tr>
<td colspan="3" style=" padding: 8px; text-align: left;">1. Total Nilai Pasar Wajar
</td>
</tr>
@php
$totalNilaiPasarWajar = 0;
$labelNilai = [
'bangunan' => 'Luas Bangunan',
'tanah' => 'Luas Tanah',
'apartemen-kantor' => 'Luas Unit',
'alat-berat' => 'Luas Alat Berat',
'mesin' => 'Luas Mesin',
'kendaraan' => 'Luas Kendaraan',
'pesawat' => 'Luas Pesawat',
'kapal' => 'Luas Kapal',
];
if (strcasecmp($jenisAset, 'RUKO/RUKAN') === 0) {
$labelNilai['bangunan'] = 'Luas Unit';
unset($labelNilai['tanah']);
}
@endphp
@foreach ($labelNilai as $key => $label)
@if (isset($lpjData['luas_' . $key]))
<tr>
<td style="padding: 3px; text-align: right; width:45%; ">
{{ $label }} {{ $lpjData['luas_' . $key] ?? '' }} m<sup>2</sup>
</td>
<td style="padding: 3px; width:5%;">
<span style="padding-left:20px; padding-right: 20px">X</span> Rp
{{ number_format($lpjData['nilai_' . $key . '_1'], 0, ',', '.') ?? '' }}
</td>
<td style="padding: 3px; text-align: left; width:60%;">
<span style="padding-left:20px; padding-right: 20px"> = </span> Rp
{{ number_format($lpjData['nilai_' . $key . '_2'], 0, ',', '.') ?? '' }}
</td>
</tr>
@php $totalNilaiPasarWajar += $lpjData['nilai_' . $key . '_2']; @endphp
@endif
@endforeach
@if (isset($lpjData['npw_tambahan']))
@foreach ($lpjData['npw_tambahan'] as $npw)
<tr>
<td style="padding: 3px; text-align: right;">
{{ $npw['name'] }} {{ $npw['luas'] }} m<sup>2</sup>
</td>
<td style="padding: 3px;">
<span style="padding-left:20px; padding-right: 20px">X</span> Rp
{{ number_format($npw['nilai_1'], 0, ',', '.') ?? '' }}
</td>
<td style="padding: 3px; text-align: left; width:70%">
<span style="padding-left:20px; padding-right: 20px"> = </span> Rp
{{ number_format($npw['nilai_2'], 0, ',', '.') ?? '' }}
</td>
</tr>
@php $totalNilaiPasarWajar += $npw['nilai_2']; @endphp
@endforeach
@endif
<tr>
<td style="padding: 3px; font-weight: bold; width:10%;">Total Nilai Pasar Wajar</td>
<td style="padding: 3px; text-align: right; font-weight: bold; width:10%"></td>
<td style="padding: 3px; text-align: left; font-weight: bold; width: 70%;">
<span style="padding-left: 20px; padding-right: 20px;">=</span>
<div style="display: inline-block; border-top: 1px solid black; padding-top: 3px;">
Rp {{ $lpjData['total_nilai_pasar_wajar'] ?? number_format($totalNilaiPasarWajar, 0, ',', '.') ?? '' }}
</div>
</td>
</tr>
<!-- Total Nilai Likuidasi -->
@if (isset($lpjData['likuidasi']) && $lpjData['likuidasi_nilai_2'] > 0)
<tr>
<td colspan="3" style="padding: 8px; text-align: left">
2. Total Nilai Likuidasi
</td>
</tr>
<tr>
<td style="padding: 3px; text-align: right; width:10%">
{{ $lpjData['likuidasi'] ?? '' }}%
</td>
<td style="padding: 3px; text-align: left; font-weight: bold; width:10%">
<span style="padding-left:20px; padding-right: 20px">X</span> Total Nilai Pasar Wajar
</td>
<td style="padding: 3px; text-align: left; width:70%;">
<span style="padding-left:20px; padding-right: 20px"> = </span> Rp
{{ number_format($lpjData['likuidasi_nilai_2'], 0, ',', '.') ?? '' }}
</td>
</tr>
@endif
</table>
</div>
@php
$keterangan = $lpjData['keterangan_penilai'] ?? '';
if (is_array($keterangan)) {
$keterangan = implode(', ', array_filter($keterangan));
}
@endphp
@if($permohonan->is_mig)
@if (!empty($forminspeksi['fakta']['keterangan']))
@foreach ($forminspeksi['fakta']['keterangan'] as $key => $item)
<table class="judul" style="width: 100%; ">
<tr>
<td style="width: 100%; border: 1px solid #000; text-align: center;">
{{ $key }}
</td>
</tr>
</table>
<table class="judul" style="width: 100%; ">
<tr>
<td style="width: 100%; text-align: left;">
@if (is_array($item))
@foreach ($item as $data_)
{!! nl2br(e($data_)) !!}<br>
@endforeach
@else
{!! nl2br(e($item)) !!}
@endif
</td>
</tr>
</table>
@endforeach
@endif
@endif;
@if (!empty($keterangan))
<table style="width: 100% margin-top: 20px">
<tr>
<td style="width: 25%; vertical-align: top;">Catatan yang Perlu Diperhatikan</td>
<td style="width:
1%; vertical-align: top">:</td>
<td style="vertical-align: top">
{!! nl2br(e($keterangan)) !!}
</td>
</tr>
</table>
@endif
<div class="no-break">
<table style="width: 100%">
<tr>
<td>Demikian laporan penilai jaminan ini di buat secara objektif, tanpa adanya pengaruh baik intern
maupun ekstern</td>
</tr>
</table>
@include('lpj::penilai.components.signature-approval')
</div>
<hr />
<table style="width: 100%; ">
<div style="margin-top: 20px;">
<label style="font-weight: bold;">DISCLAIMER</label>
<div>
<ol style="padding-left: 20px; list-style-type: decimal; margin-top: 0;">
<li style="margin-bottom: 5px;">PENILAIAN INI DIBUAT BERDASARKAN ATURAN YANG
BERLAKU DI SUBDIT APPRAISAL</li>
<li style="margin-bottom: 5px;">LAPORAN INI DIBUAT BERDASARKAN DATA FOTOCOPY
DOKUMEN YANG DITERIMA PENILAI DENGAN ASUMSI BAHWA DATA TERSEBUT SESUAI DENGAN
DOKUMEN ASLINYA</li>
<li style="margin-bottom: 5px;">PENILAI TIDAK MELAKUKAN PEMBUKTIAN LEBIH RINCI ATAU
PENGAKUAN TERTULIS DARI PIHAK YANG DITEMUI SAAT PENILAIAN, ATAS INFORMASI YANG
DIBERIKAN SECARA LISAN SEHUBUNGAN DENGAN IDENTITAS DIRI DAN HUBUNGAN DI ANTARA
PIHAK TERKAIT SAAT MELAKUKAN INSPEKSI OBJEK YANG DINILAI</li>
<li style="margin-bottom: 5px;">LAPORAN INI DIGUNAKAN HANYA UNTUK KEPENTINGAN
INTERNAL DAN DILARANG MENYEBARKAN KEPADA PIHAK KETIGA</li>
</ol>
</div>
</div>
</table>
</main>
@include('lpj::penilai.components.footer')