From f3da3ad7f8675ff6d651fccc9a4885adfcc4d35f Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Tue, 24 Dec 2024 12:58:20 +0700 Subject: [PATCH] Tambah logging untuk penanganan error saat generate PDF - Menambahkan fungsi try-catch di `PenilaiController` untuk menangani kesalahan saat proses pembuatan file PDF. - Menggunakan `Illuminate\Support\Facades\Log` untuk mencatat error yang terjadi. - Memperbaiki format dan layout pada file blade `print-out.blade.php` agar lebih konsisten. --- app/Http/Controllers/PenilaiController.php | 29 +- .../penilai/components/print-out.blade.php | 1264 +++++++++-------- 2 files changed, 656 insertions(+), 637 deletions(-) diff --git a/app/Http/Controllers/PenilaiController.php b/app/Http/Controllers/PenilaiController.php index 16cf679..66ee6d8 100644 --- a/app/Http/Controllers/PenilaiController.php +++ b/app/Http/Controllers/PenilaiController.php @@ -13,6 +13,7 @@ use Maatwebsite\Excel\Facades\Excel; use Modules\Lpj\Exports\KertasKerjaExport; use Modules\Lpj\Http\Controllers\SurveyorController; use Modules\Location\Models\Province; +use Illuminate\Support\Facades\Log; class PenilaiController extends Controller { @@ -607,20 +608,24 @@ class PenilaiController extends Controller $lpjData = json_decode($lpj->lpj, true); } + try { + $pdf = PDF::loadView('lpj::penilai.components.print-out', compact( + 'permohonan', + 'forminspeksi', + 'lpjData', + 'formFoto', + 'basicData', + 'inspeksi', + 'lpj' + )); - $pdf = PDF::loadView('lpj::penilai.components.print-out', compact( - 'permohonan', - 'forminspeksi', - 'lpjData', - 'formFoto', - 'basicData', - 'inspeksi', - 'lpj' - )); + $pdf->setPaper('A4', 'portrait'); - $pdf->setPaper('A4', 'portrait'); - - return $pdf->download('laporan.pdf'); + return $pdf->download('laporan.pdf'); + } catch (\Exception $e) { + Log::error('PDF generation failed: ' . $e->getMessage()); + return response()->json(['error' => 'Failed to generate PDF. Please check the log for details.'], 500); + } // return view('lpj::penilai.components.print-out', compact( // 'permohonan', diff --git a/resources/views/penilai/components/print-out.blade.php b/resources/views/penilai/components/print-out.blade.php index db7a6c0..3f888cd 100644 --- a/resources/views/penilai/components/print-out.blade.php +++ b/resources/views/penilai/components/print-out.blade.php @@ -214,229 +214,229 @@ -
-
-

LAPORAN PENILAIAN ATAS TANAH DAN/ATAU BANGUNAN

-

NO: {{ $permohonan->nomor_registrasi }}

-
+
+
+

LAPORAN PENILAIAN ATAS TANAH DAN/ATAU BANGUNAN

+

NO: {{ $permohonan->nomor_registrasi }}

+
-
-
- - - - - -
- A - - TUJUAN PENILAIAN -
-
- +
+
+
- - - - - - - - @endif -
- - - - - - - - - -
Permintaan (A/O){{ $permohonan->user->name }}
Jenis Fasilitas {{ $permohonan->tujuanPenilaian->name }}
+
+ A - - - - - - - - - -
Tanggal{{ $permohonan->created_at->format('d/m/Y') }}
Kunjungan Tanggal{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
-
- @if (isset($basicData['tujuanPenilaian'])) -
    - @foreach ($basicData['tujuanPenilaian'] as $item) -
  • name == $permohonan->tujuanPenilaian->name ? 'checked' : '' }}>{{ $item->name }} -
  • - @endforeach -
-
-
- -
-
- - - - - -
- B - - IDENTITAS DEBITUR -
-
- - - - - - - - - - - -
Nama Debitur{{ $permohonan->debiture->name ?? '' }}
Alamat dan Telepon{{ $permohonan->debiture->address ?? '' }} {{ $permohonan->debiture->phone ?? '' }}
Saat menilai, penilai didampingi oleh - - - - - - - - - -
Debitur / Wakil Debitur{{ $permohonan->debiture->name ?? '' }}
Pihak Bank selain PJ
+
+ TUJUAN PENILAIAN
+ + + + + -
-
-
+ + + + + + + + + +
Permintaan (A/O){{ $permohonan->user->name }}
Jenis Fasilitas {{ $permohonan->tujuanPenilaian->name }}
+
+ + + + + + + + + +
Tanggal{{ $permohonan->created_at->format('d/m/Y') }}
Kunjungan Tanggal{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
+
- - - - -
- C - - JENIS JAMINAN -
-
- - @php - $data = ''; - foreach ($permohonan->debiture->documents as $dokumen) { - $data .= $dokumen->jenisJaminan->name . ', '; - } - $data = rtrim($data, ', '); // Remove the trailing comma and space - @endphp - - @if (isset($basicData['jenisJaminan'])) - - @foreach ($basicData['jenisJaminan'] as $index => $item) - @if ($index % 3 === 0) - - @endif - - @if ($index % 3 === 2 || $loop->last) - - @endif - @endforeach -
- name, explode(',', $data)) ? 'checked' : '' }}> - {{ $item->name }} -
+ + + @if (isset($basicData['tujuanPenilaian'])) + + + @endif -
+ + - -
-
- - - - - -
- D - - LOKASI JAMINAN -
-
- +
+
+
- - - - - - - - - - - - - - - - - - + +
Terletak di {{ $dokumen->pemilik->address ?? '' }}
Kelurahan{{ $dokumen->pemilik->village->name ?? '' }}
Kecamatan{{ $dokumen->pemilik->district->name ?? '' }},
Kotamadya {{ $dokumen->pemilik->city->name ?? '' }},
Propinsi{{ $dokumen->pemilik->province->name ?? '' }} + B + + IDENTITAS DEBITUR +
+
+ + + + + + + + + + + + + +
Nama Debitur{{ $permohonan->debiture->name ?? '' }}
Alamat dan Telepon{{ $permohonan->debiture->address ?? '' }} {{ $permohonan->debiture->phone ?? '' }}
Saat menilai, penilai didampingi oleh + + + + + + + + + +
Debitur / Wakil Debitur{{ $permohonan->debiture->name ?? '' }}
Pihak Bank selain PJ
+
+ +
+
+ + + + + +
+ C + + JENIS JAMINAN +
-
-
- - - - - -
- E - - STATUS KEPEMILIKAN, HUBUNGAN DAN PENGHUNI -
-
+ @php + $data = ''; + foreach ($permohonan->debiture->documents as $dokumen) { + $data .= $dokumen->jenisJaminan->name . ', '; + } + $data = rtrim($data, ', '); // Remove the trailing comma and space + @endphp - + @if (isset($basicData['jenisJaminan'])) +
+ @foreach ($basicData['jenisJaminan'] as $index => $item) + @if ($index % 3 === 0) + + @endif + + @if ($index % 3 === 2 || $loop->last) + + @endif + @endforeach +
+ name, explode(',', $data)) ? 'checked' : '' }}> + {{ $item->name }} +
+ @endif +
+ + +
+
+ - - + + +
SHM No/Kelurahan/Desa{{ $dokumen->pemilik->address ?? '' }} + D + + LOKASI JAMINAN +
+
+ + + + + + + + + + + + + + + + + + + + + +
Terletak di {{ $dokumen->pemilik->address ?? '' }}
Kelurahan{{ $dokumen->pemilik->village->name ?? '' }}
Kecamatan{{ $dokumen->pemilik->district->name ?? '' }},
Kotamadya {{ $dokumen->pemilik->city->name ?? '' }},
Propinsi{{ $dokumen->pemilik->province->name ?? '' }}
+ +
+ +
+
+ - - + + - - - - - - - - - - - - - - - - - - @php +
Tanggal{{ $dokumen->pemilik->created_at->format('d-m-Y') ?? '' }} + E + + STATUS KEPEMILIKAN, HUBUNGAN DAN PENGHUNI +
Atas Nama{{ $dokumen->pemilik->name ?? '' }}
Gambar Situasi No/Tanggal
Luas Tanah /m2{{ $dokumen->luas_tanah ?? '' }}
IMB No/Tanggal{{ $dokumen->imb_no ?? '' }}
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + @php $cekHub = isset($forminspeksi['asset']['hub_cadeb']) && @@ -448,21 +448,23 @@ ? $forminspeksi['asset']['hub_cadeb']['tidak sesuai'] : $forminspeksi['asset']['hub_cadeb']['sesuai']; @endphp - - - - - @php + + + + + @php $cekHub = isset($forminspeksi['asset']['hub_cadeb_penghuni']) && @@ -474,78 +476,80 @@ ? $forminspeksi['asset']['hub_cadeb_penghuni']['tidak sesuai'] : $forminspeksi['asset']['hub_cadeb_penghuni']['sesuai']; @endphp - - + + +
SHM No/Kelurahan/Desa{{ $dokumen->pemilik->address ?? '' }}
Tanggal{{ $dokumen->pemilik->created_at->format('d-m-Y') ?? '' }}
Atas Nama{{ $dokumen->pemilik->name ?? '' }}
Gambar Situasi No/Tanggal
Luas Tanah /m2{{ $dokumen->luas_tanah ?? '' }}
IMB No/Tanggal{{ $dokumen->imb_no ?? '' }}
Hubungan Pemilik Jaminan dengan Debitur - @if (isset($basicData['hubCadeb'])) - - - @foreach ($basicData['hubCadeb'] as $item) - - @endforeach - -
name === $hubCadeb ? 'checked' : '' }} > {{ $item->name }}
- @endif -
Hubungan Pemilik Jaminan dengan Debitur + @if (isset($basicData['hubCadeb'])) + + + @foreach ($basicData['hubCadeb'] as $item) + + @endforeach + +
+ name === $hubCadeb ? 'checked' : '' }} > {{ $item->name }} +
+ @endif +
Hubungan Penghuni Jaminan dengan Debitur - @if (isset($basicData['hubPenghuni'])) - - - @foreach ($basicData['hubPenghuni'] as $item) - - @endforeach - -
name === $hubCadeb ? 'checked' : '' }} > {{ $item->name }}
- @endif +
Hubungan Penghuni Jaminan dengan Debitur + @if (isset($basicData['hubPenghuni'])) + + + @foreach ($basicData['hubPenghuni'] as $item) + + @endforeach + +
+ name === $hubCadeb ? 'checked' : '' }} > {{ $item->name }} +
+ @endif +
+ + +
+ +
+
+ + + +
+ F + + ANALISA TANAH DAN BANGUNAN
- -
+ + + @php -
-
-
- - - - -
- F - - ANALISA TANAH DAN BANGUNAN -
-
- - - @php + $cekLuas = + isset($forminspeksi['tanah']['luas_tanah']) && + $forminspeksi['tanah']['luas_tanah'] === 'sesuai' + ? 'sesuai' + : 'tidak sesuai'; - $cekLuas = - isset($forminspeksi['tanah']['luas_tanah']) && - $forminspeksi['tanah']['luas_tanah'] === 'sesuai' - ? 'sesuai' - : 'tidak sesuai'; - - $luas = isset($forminspeksi['tanah']['luas_tanah'][$cekLuas]) - ? $forminspeksi['tanah']['luas_tanah'][$cekLuas] - : null; - @endphp + $luas = isset($forminspeksi['tanah']['luas_tanah'][$cekLuas]) + ? $forminspeksi['tanah']['luas_tanah'][$cekLuas] + : null; + @endphp - - - - - - @@ -557,15 +561,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + @endforeach + +
Luas Tanah{{ $luas }}
Bentuk Tanah - @if (isset($basicData['bentukTanah'])) - - - @foreach ($basicData['bentukTanah'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - + + + + + + + @endforeach + +
- name, $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) ? 'checked' : '' }}> - {{ $item->name }} - Luas Tanah{{ $luas }}
Bentuk Tanah + @if (isset($basicData['bentukTanah'])) + + + @foreach ($basicData['bentukTanah'] as $index => $item) + @if ($index % 3 == 0 && $index > 0) + + + @endif + - @endforeach - -
+ name, $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) ? 'checked' : '' }}> + {{ $item->name }} +
- @endif -
+ @endif +
Kontur Tanah
+ name, $forminspeksi['tanah']['kontur_tanah']) ? 'checked' : '' }}> {{ $item->name }} +
@endif - - name, $forminspeksi['tanah']['kontur_tanah']) ? 'checked' : '' }}> {{ $item->name }} - @endforeach - - - @endif - Permukaan dengan Jalan @@ -577,15 +581,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $item->name }} + + @endforeach + + @endif - - {{ $item->name }} - @endforeach - - - @endif - Peruntukan Tanah @@ -597,15 +601,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $item->name }} + + @endforeach + + @endif - - {{ $item->name }} - @endforeach - - - @endif - Fisik Tanah @@ -617,15 +621,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $item->name }} + + @endforeach + + @endif - - {{ $item->name }} - @endforeach - - - @endif - Jenis Bangunan @@ -637,15 +641,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $item->name }} + + @endforeach + + @endif - - {{ $item->name }} - @endforeach - - - @endif - Kondisi Bangunan @@ -657,15 +661,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $item->name }} + + @endforeach + + @endif - - {{ $item->name }} - @endforeach - - - @endif - Sifat Bangunan @@ -677,15 +681,15 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $item->name }} + + @endforeach + + @endif - - {{ $item->name }} - @endforeach - - - @endif - @foreach ($basicData['spekKategoriBangunan'] as $kategori) @@ -698,72 +702,72 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + {{ $sifat->name }} + + @endforeach + + @endif - - {{ $sifat->name }} + @endforeach - - - @endif - - - @endforeach - + -
+ -
-
- - - - - -
- G - - SARANA PELENGKAP DAN LINGKUNGAN -
-
- +
+
+
- @php + + + +
+ G + + SARANA PELENGKAP DAN LINGKUNGAN +
+
+ + + @php - $cekLuas = - isset($forminspeksi['tanah']['luas_tanah']) && - $forminspeksi['tanah']['luas_tanah'] === 'sesuai' - ? 'sesuai' - : 'tidak sesuai'; + $cekLuas = + isset($forminspeksi['tanah']['luas_tanah']) && + $forminspeksi['tanah']['luas_tanah'] === 'sesuai' + ? 'sesuai' + : 'tidak sesuai'; - $luas = isset($forminspeksi['tanah']['luas_tanah'][$cekLuas]) - ? $forminspeksi['tanah']['luas_tanah'][$cekLuas] - : null; - @endphp + $luas = isset($forminspeksi['tanah']['luas_tanah'][$cekLuas]) + ? $forminspeksi['tanah']['luas_tanah'][$cekLuas] + : null; + @endphp - - - - - - - + + + + + + + @@ -776,13 +780,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + + @endforeach + +
Luas Tanah{{ $luas }}
Lapisan Perkerasan Jalan - @if (isset($basicData['perkerasanJalan'])) - - - @foreach ($basicData['perkerasanJalan'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
{{ $item->name }}
- @endif -
Luas Tanah{{ $luas }}
Lapisan Perkerasan Jalan + @if (isset($basicData['perkerasanJalan'])) + + + @foreach ($basicData['perkerasanJalan'] as $index => $item) + @if ($index % 3 == 0 && $index > 0) + + + @endif + + @endforeach + +
{{ $item->name }}
+ @endif +
{{ $item->name }}
@endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -795,13 +799,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + {{ $item->name }} + @endforeach + + @endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -814,13 +818,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + {{ $item->name }} + @endforeach + + @endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -833,13 +837,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + {{ $item->name }} + @endforeach + + @endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -852,13 +856,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + {{ $item->name }} + @endforeach + + @endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -871,13 +875,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + {{ $item->name }} + @endforeach + + @endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -890,13 +894,13 @@ @if ($index % 3 == 0 && $index > 0) + @endif + {{ $item->name }} + @endforeach + + @endif - {{ $item->name }} - @endforeach - - - @endif - + @@ -909,219 +913,229 @@ @if ($index % 3 == 0 && $index > 0) - @endif - {{ $item->name }} - @endforeach - - - @endif - - - - - - - - - -
-
- - - - - -
- H - - ASURANSI -
-
- - - - - -
Tidak Ada Ada
- -
- -
-
- - - - - -
- I - - KESIMPULAN DAN SARAN PENILAI, INFORMASI HARGA, - TOTAL NILAI JAMINAN DAN CATATAN PERLU DIPERHATIKAN -
-
- - - - - - - - - - - - - + @endforeach + +
Faktor Positif - @isset($forminspeksi['fakta']['fakta_positif']) - - @foreach ($forminspeksi['fakta']['fakta_positif'] as $key => $item) - - - - @endforeach -
[{{ $key }}] {{ $item }}
- @endisset -
Faktor Negatif - @isset($forminspeksi['fakta']['fakta_negatif']) - - @foreach ($forminspeksi['fakta']['fakta_negatif'] as $key => $item) - - - - @endforeach -
[{{ $key }}] {{ $item }}
- @endisset -
Lain - lain : -

- Berdasarkan hasil kunjungan di lapangan dapat disampaikan sebagai berikut :

- - @isset($forminspeksi['fakta']) - @foreach ($forminspeksi['fakta'] as $key => $item) - @if ( - !in_array($key, [ - 'fakta_positif', - 'fakta_negatif', - 'rute_menuju', - 'batas_batas', - 'batas_batas_input', - 'kondisi_lingkungan', - 'kondisi_lain_bangunan', - 'informasi_dokument', - ])) -

{{ $item }}

@endif - @endforeach - @endisset +
{{ $item->name }}
+ @endif + + + + + +
+ + +
+
+ + + + - -
+ H + + ASURANSI
-
+ + + + + +
Tidak Ada Ada
-
+
-
-
- PETA LOKASI -
-
- @php - $fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; - @endphp -
- @if (isset($forminspeksi)) - @forelse ($fotoTypes as $type) -
- @php - $imagePath = $forminspeksi[$type]; - @endphp +
+
+ + + + + +
+ I + + KESIMPULAN DAN SARAN PENILAI, INFORMASI HARGA, + TOTAL NILAI JAMINAN DAN CATATAN PERLU DIPERHATIKAN +
+
+ + + + + + + + + + + + + + + +
Faktor Positif + @isset($forminspeksi['fakta']['fakta_positif']) + + @foreach ($forminspeksi['fakta']['fakta_positif'] as $key => $item) + + + + @endforeach +
[{{ $key }}] {{ $item }}
+ @endisset +
Faktor Negatif + @isset($forminspeksi['fakta']['fakta_negatif']) + + @foreach ($forminspeksi['fakta']['fakta_negatif'] as $key => $item) + + + + @endforeach +
[{{ $key }}] {{ $item }}
+ @endisset +
Lain - lain : +

- Berdasarkan hasil kunjungan di lapangan dapat disampaikan sebagai berikut :

+ + @isset($forminspeksi['fakta']) + @foreach ($forminspeksi['fakta'] as $key => $item) + @if ( + !in_array($key, [ + 'fakta_positif', + 'fakta_negatif', + 'rute_menuju', + 'batas_batas', + 'batas_batas_input', + 'kondisi_lingkungan', + 'kondisi_lain_bangunan', + 'informasi_dokument', + ])) +

{{ $item }}

+ @endif + @endforeach + @endisset +
+ +
+ +
+ +
+
+ PETA LOKASI +
+
+ @php + $fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; + @endphp +
+ @if (isset($forminspeksi)) + @forelse ($fotoTypes as $type) +
+ @php + $imagePath = $forminspeksi[$type]; + @endphp + + @if($imagePath && file_exists(storage_path('app/public/'. $imagePath))) {{ $type }} -

{{ Str::title(str_replace('_', ' ', $type)) }}

+ class="photo-image"> + @endif +

{{ Str::title(str_replace('_', ' ', $type)) }}

-
- @empty -

Tidak ada tipe foto yang tersedia

- @endforelse - @endif -
-
- -
-
-
- FOTO JAMINAN -
-
-
- @if (isset($formFoto)) - @foreach ($formFoto['rute_menuju_lokasi'] as $item) -
-

- {{ $item['name_rute'] . ' ' . $loop->index + 1 }} -

- - {{ $item['foto_rute'] }} -
- @endforeach - @endif - - @if (isset($formFoto['object_jaminan'])) - @foreach ($formFoto['object_jaminan'] as $item) -
-

- {{ $item['name_objek'] }} -

- - {{ $item['foto_objek'] }} -
- @endforeach - @endif - - @if (isset($formFoto['foto_basement'])) -
-

- Basement -

- - {{ $formFoto['foto_basement'] }}
- @endif - - @if (isset($formFoto['foto_gerbang'])) -
-

- Gerbang -

- - {{ $formFoto['foto_gerbang'] }} -
- @endif - @if (isset($formFoto['pendamping'])) -
-

- Pendamping -

- - {{ $formFoto['pendamping'] }} -
- @endif -
+ @empty +

Tidak ada tipe foto yang tersedia

+ @endforelse + @endif
- +
+
+
+ FOTO JAMINAN +
+
+
+ @if (isset($formFoto)) + @foreach ($formFoto['rute_menuju_lokasi'] as $item) +
+

+ {{ $item['name_rute'] . ' ' . $loop->index + 1 }} +

+ + @if(file_exists(storage_path('app/public/'. $item['foto_rute']))) + {{ $item['foto_rute'] }} + @endif +
+ @endforeach + @endif + + @if (isset($formFoto['object_jaminan'])) + @foreach ($formFoto['object_jaminan'] as $item) +
+

+ {{ $item['name_objek'] }} +

+ + @if(file_exists(storage_path('app/public/'. $item['foto_objek']))) + {{ $item['foto_objek'] }} + @endif +
+ @endforeach + @endif + + @if (isset($formFoto['foto_basement'])) +
+

+ Basement +

+ + @if(file_exists(storage_path('app/public/'. $formFoto['foto_basement']))) + {{ $formFoto['foto_basement'] }} + @endif +
+ @endif + + @if (isset($formFoto['foto_gerbang'])) +
+

+ Gerbang +

+ + @if(file_exists(storage_path('app/public/'. $formFoto['foto_gerbang']))) + {{ $formFoto['foto_gerbang'] }} + @endif +
+ @endif + @if (isset($formFoto['pendamping'])) +
+

+ Pendamping +

+ @if(file_exists(storage_path('app/public/'. $formFoto['pendamping']))) + {{ $formFoto['pendamping'] }} + @endif +
+ @endif +
+
+
+ +