fix(penilai): perbaikan output resume,memo dan update upload foto directory by nomor registrasi

This commit is contained in:
majid
2025-01-22 09:06:10 +07:00
parent d101db1043
commit 575ea3fdce
12 changed files with 440 additions and 271 deletions

View File

@@ -151,6 +151,7 @@ class PenilaiController extends Controller
$jaminanId = $request->query('jaminanId'); $jaminanId = $request->query('jaminanId');
$permohonan = $this->surveyorController->getPermohonanJaminanId($permohonanId, $documentId, $jaminanId); $permohonan = $this->surveyorController->getPermohonanJaminanId($permohonanId, $documentId, $jaminanId);
$nomorLaporan = $this->generateNoLaporan($permohonan, $documentId, 'resume');
$inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); $inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first();
$noLpresume = $this->generateNoLaporan($permohonan, $documentId, 'resume'); $noLpresume = $this->generateNoLaporan($permohonan, $documentId, 'resume');
Penilai::updateOrCreate( Penilai::updateOrCreate(
@@ -177,7 +178,7 @@ class PenilaiController extends Controller
$forminspeksi = json_decode($inspeksi->data_form, true); $forminspeksi = json_decode($inspeksi->data_form, true);
} }
return view('lpj::penilai.components.resume', compact('permohonan', 'resumeData', 'forminspeksi')); return view('lpj::penilai.components.resume', compact('permohonan', 'resumeData', 'forminspeksi', 'nomorLaporan'));
} }
public function memo(Request $request) public function memo(Request $request)
@@ -932,9 +933,7 @@ class PenilaiController extends Controller
'tanggalLaporan', 'tanggalLaporan',
'rap' 'rap'
)); ));
// return $pdf; // return $pdf;
$cleanNomorLaporan = str_replace(['/', '\\'], '-', $nomorLaporan); $cleanNomorLaporan = str_replace(['/', '\\'], '-', $nomorLaporan);
$pdf->setPaper('A4', 'portrait'); $pdf->setPaper('A4', 'portrait');
return $pdf->download('Laporan_'. $tipeLaporan . '_' .$permohonan->debiture->name . '_' . $cleanNomorLaporan .'_data.pdf'); return $pdf->download('Laporan_'. $tipeLaporan . '_' .$permohonan->debiture->name . '_' . $cleanNomorLaporan .'_data.pdf');
@@ -1055,7 +1054,7 @@ class PenilaiController extends Controller
if ($laporan) { if ($laporan) {
$nomorArray = explode('/', $laporan->nomor_laporan); $nomorArray = explode('/', $laporan->nomor_laporan);
$nomorArray[2] = $typeMapping[$type] ?? 'RSM'; $nomorArray[2] = $typeMapping[$type] ?? 'RES';
$laporan->update([ $laporan->update([
'nomor_laporan' => implode('/', $nomorArray) 'nomor_laporan' => implode('/', $nomorArray)
]); ]);

View File

@@ -253,7 +253,8 @@ class SurveyorController extends Controller
'nama_denah.*' => 'nullable|string|max:255', 'nama_denah.*' => 'nullable|string|max:255',
'luas_denah.*' => 'nullable|numeric', 'luas_denah.*' => 'nullable|numeric',
'permohonan_id' => 'required|exists:permohonan,id', 'permohonan_id' => 'required|exists:permohonan,id',
'dokument_id' => 'required' 'dokument_id' => 'required',
'nomor_registrasi' => 'required'
]); ]);
if ($validator) { if ($validator) {
try { try {
@@ -276,7 +277,7 @@ class SurveyorController extends Controller
if ($request->hasFile('foto_denah') && isset($request->file('foto_denah')[$index])) { if ($request->hasFile('foto_denah') && isset($request->file('foto_denah')[$index])) {
$file = $request->file('foto_denah')[$index]; $file = $request->file('foto_denah')[$index];
$denahItem['foto_denah'] = $this->uploadFile($file, 'foto_denah'); $denahItem['foto_denah'] = $this->uploadFile($file, $request->nomor_registrasi);
} elseif (isset($existingDenahs[$index]['foto_denah'])) { } elseif (isset($existingDenahs[$index]['foto_denah'])) {
$denahItem['foto_denah'] = $existingDenahs[$index]['foto_denah']; $denahItem['foto_denah'] = $existingDenahs[$index]['foto_denah'];
} }
@@ -381,7 +382,7 @@ class SurveyorController extends Controller
} }
// Upload dan simpan file baru // Upload dan simpan file baru
$formatFotojson[$file] = $this->uploadFile($request->file($file), $file); $formatFotojson[$file] = $this->uploadFile($request->file($file), $request->nomor_registrasi);
} }
} }
@@ -448,12 +449,13 @@ class SurveyorController extends Controller
continue; // Lewati file yang tidak valid continue; // Lewati file yang tidak valid
} }
// Generate nama file unik // Generate nama file unik
$uniqueFileName = 'lantai_unit_' . $lantaiNomor . '_' . $fileIndex . '_' . Str::random(10) . '.' . $file->getClientOriginalExtension(); $uniqueFileName = 'lantai_unit_' . $lantaiNomor . '_' . $fileIndex . '_' . Str::random(10) . '.' . $file->getClientOriginalExtension();
// Simpan file dengan nama asli // Simpan file dengan nama asli
$path = $file->storeAs( $path = $file->storeAs(
'surveyor/lantai_unit', 'surveyor/' . $request->nomor_registrasi . '/foto_lantai_unit',
$uniqueFileName . '/' . time() . '_' . $file->getClientOriginalName(), $uniqueFileName . '/' . time() . '_' . $file->getClientOriginalName(),
'public' 'public'
); );
@@ -490,12 +492,13 @@ class SurveyorController extends Controller
$formatFotoData = []; $formatFotoData = [];
foreach ($files as $index => $file) { foreach ($files as $index => $file) {
$timestamp = time();
$originalName = $file->getClientOriginalName(); $fileExtension = $file->extension();
$uniqueFileName = "{$timestamp}_{$originalName}"; $originalName = time() . '_' . $request->nomor_registrasi . '.' . $fileExtension;
// Simpan file // Simpan file
$path = $file->storeAs("surveyor/{$paramName}", $uniqueFileName, 'public'); $path = $file->storeAs("surveyor/{$request->nomor_registrasi}", $originalName, 'public');
$fotoData = [ $fotoData = [
'path' => $path, 'path' => $path,
@@ -653,7 +656,7 @@ class SurveyorController extends Controller
// Buat entri baru untuk file yang diunggah // Buat entri baru untuk file yang diunggah
$newPhotoEntry = [ $newPhotoEntry = [
$nameField => $newNames[$key], $nameField => $newNames[$key],
$photoField => $this->uploadFile($file, $photoField . '.' . $key), $photoField => $this->uploadFile($file, $request->nomor_registrasi),
$descriptionField => $newDescriptions[$key] ?? '', $descriptionField => $newDescriptions[$key] ?? '',
]; ];
@@ -777,7 +780,7 @@ class SurveyorController extends Controller
// Create new photo entry // Create new photo entry
$newPhotoEntry = [ $newPhotoEntry = [
$nameField => $newNames[$key] ?? '', // Use new name if provided $nameField => $newNames[$key] ?? '', // Use new name if provided
$photoField => $this->uploadFile($file, $photoField . '.' . $key) $photoField => $this->uploadFile($file, $request->nomor_registrasi)
]; ];
// Add description if field exists // Add description if field exists
@@ -959,11 +962,11 @@ class SurveyorController extends Controller
$id = $request->input('id'); $id = $request->input('id');
$penilaian = Penilaian::findOrFail($id); $penilaian = Penilaian::findOrFail($id);
if ($validate['waktu_penilaian'] <= $penilaian->tanggal_kunjungan) { if ($validate['waktu_penilaian'] <= $penilaian->tanggal_kunjungan) {
return redirect() return redirect()
->route('surveyor.index') ->route('surveyor.index')
->with('error', 'Waktu penilaian harus lebih besar dari tanggal assign.'); ->with('error', 'Waktu penilaian harus lebih besar dari tanggal assign.');
} }
$penilaian->update([ $penilaian->update([
'waktu_penilaian' => $validate['waktu_penilaian'], 'waktu_penilaian' => $validate['waktu_penilaian'],
'deskripsi_penilaian' => $validate['deskripsi_penilaian'], 'deskripsi_penilaian' => $validate['deskripsi_penilaian'],
@@ -1017,25 +1020,25 @@ class SurveyorController extends Controller
{ {
try { try {
$permohonan = Permohonan::findOrFail($id); $permohonan = Permohonan::findOrFail($id);
$permohonan->update([ $permohonan->update([
'status' => 'request-freeze', 'status' => 'request-freeze',
'keterangan' => $request->message 'keterangan' => $request->message
]); ]);
return response()->json([ return response()->json([
'success' => true, 'success' => true,
'message' => 'Berhasil Kirim permintaan Request Freeaze ke So' 'message' => 'Berhasil Kirim permintaan Request Freeaze ke So'
], 200); ], 200);
} catch (\Exception $e) { } catch (\Exception $e) {
return response()->json([ return response()->json([
'success' => false, 'success' => false,
'message' => 'Terjadi kesalahan', 'message' => 'Terjadi kesalahan',
'error' => $e->getMessage() 'error' => $e->getMessage()
], 500); ], 500);
} }
} }
@@ -2615,8 +2618,9 @@ class SurveyorController extends Controller
if ($request->hasFile($fileKey)) { if ($request->hasFile($fileKey)) {
$file = $request->file($fileKey); $file = $request->file($fileKey);
if ($file->isValid()) { if ($file->isValid()) {
$fileName = time() . '_' . $file->getClientOriginalName(); $fileExtension = $file->extension();
$path = $file->storeAs("public/surveyor/{$request->type}", $fileName); $fileName = time() . '_' . $request->nomor_registrasi . '.' . $fileExtension;
$path = $file->storeAs("public/surveyor/{$request->nomor_registrasi}", $fileName);
if ($path === false) { if ($path === false) {
throw new Exception("Failed to store file for {$fileKey}"); throw new Exception("Failed to store file for {$fileKey}");
@@ -3091,7 +3095,8 @@ class SurveyorController extends Controller
throw new Exception("Invalid file upload for {$type}"); throw new Exception("Invalid file upload for {$type}");
} }
$fileName = time() . '_' . $file->getClientOriginalName(); $fileExtension = $file->extension();
$fileName = time() . '_' . $type . '.' . $fileExtension;
$path = $file->storeAs("public/surveyor/{$type}", $fileName); $path = $file->storeAs("public/surveyor/{$type}", $fileName);
if ($path === false) { if ($path === false) {

View File

@@ -568,6 +568,7 @@ class FormSurveyorRequest extends FormRequest
return [ return [
'permohonan_id' => 'required', 'permohonan_id' => 'required',
'type' => 'required', 'type' => 'required',
'nomor_registrasi' => 'required',
'debitur_perwakilan' => 'required|array', 'debitur_perwakilan' => 'required|array',
'jenis_asset_name' => 'nullable|', 'jenis_asset_name' => 'nullable|',
'jenis_asset' => 'required', 'jenis_asset' => 'required',

View File

@@ -358,7 +358,7 @@
confirmButtonText: 'OK' confirmButtonText: 'OK'
}).then((response) => { }).then((response) => {
if (response.isConfirmed) { if (response.isConfirmed) {
window.location.reload(); // window.location.reload();
} }
}); });
} else { } else {

View File

@@ -108,6 +108,34 @@
</head> </head>
<body style="width: 80%; margin: auto"> <body style="width: 80%; margin: auto">
@php
$data = '';
foreach ($permohonan->debiture->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', ';
$penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first();
$surveyor = $permohonan->penilaian->userPenilai->where('role', 'surveyor')->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;
}
}
}
}
}
}
$data = rtrim($data, ', ');
@endphp
<header id="header"> <header id="header">
<table style="width: 100%; border: none;"> <table style="width: 100%; border: none;">
<tr> <tr>
@@ -119,10 +147,10 @@
</header> </header>
<main class="content"> <main class="content">
<table> <table style="width: 100%">
<tr> <tr>
<td> <td style="text-align: center; margin-top: 5px;">
<h2 style=" text-transform: uppercase;">MEMO ANTAR KANTOR</h2> <h2 style="text-decoration: underline; text-transform: uppercase; text-align: center; margin: 0;">MEMO ANTAR KANTOR</h2>
</td> </td>
</tr> </tr>
</table> </table>
@@ -138,7 +166,7 @@
<td style="width: 79%; padding: 2px;">{{ $memo['dari'] ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $memo['dari'] ?? '' }}</td>
</tr> </tr>
<tr> <tr>
<td style="width: 20%; padding: 2px;">No</td> <td style="width: 20%; padding: 2px;">No memo</td>
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $nomorLaporan ?? '-' }}</td> <td style="width: 79%; padding: 2px;">{{ $nomorLaporan ?? '-' }}</td>
</tr> </tr>
@@ -158,25 +186,30 @@
<tr> <tr>
<td> <td>
Menindak lanjuti permintann penilaian jaminan dari {{ $permohonan->user->name }} AO Cabang {{ $permohonan->debiture->branch->name ?? '' }} Menindak lanjuti permintann penilaian jaminan dari {{ $permohonan->user->name }} AO Cabang {{ $permohonan->debiture->branch->name ?? '' }}
tanggal , dapat di sampaikan sebagai berikut: tanggal {{formatTanggalIndonesia($memo['tanggal']) ?? ''}}, dapat di sampaikan sebagai berikut:
</td> </td>
</tr> </tr>
</table> </table>
<table> <table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr> <tr>
<td> <td style="">
<h2 style=" text-transform: uppercase;">Identitas Deitur & Hubungan dan Penghuni</h2> <h6 style="text-transform: uppercase; margin: 0; ">Data Debitur dan Jaminan</h2>
</td> </td>
</tr> </tr>
</table> </table>
<table style="width: 100%"> <table style="width: 100%">
<tr> <tr>
<td style="width: 20%; padding: 2px;">Nama Calon Debiture</td> <td style="width: 20%; padding: 2px;">Nama Calon Debitur</td>
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
</tr> </tr>
<tr>
<td style="width: 20%; padding: 2px;">Jenis Aset</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $data ?? '' }}</td>
</tr>
@if (@isset($dokumen)) @if (@isset($dokumen))
@foreach ($dokumen->detail as $details) @foreach ($dokumen->detail as $details)
@@ -213,16 +246,7 @@
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
</tr> </tr>
<tr>
<td style="width: 20%; padding: 2px;">Tanggal Terbit Sertifikat</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;"></td>
</tr>
<tr>
<td style="width: 20%; padding: 2px;">Surat Ukur No</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;"></td>
</tr>
<tr> <tr>
@php @php
$cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) ? 'tidak sesuai' : 'sesuai'; $cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) ? 'tidak sesuai' : 'sesuai';
@@ -233,76 +257,72 @@
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $luas ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $luas ?? '' }}</td>
</tr> </tr>
<tr>
<td style="width: 20%; padding: 2px;">Lokasi Jaminan</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $memo['lokasi']['address'] ?? '' }}, {{ $alamat['village_code'] ?? '' }} {{ $alamat['district_code'] ?? '' }}, {{ $alamat['city_code'] ?? '' }}, {{ $alamat['province_code'] ?? '' }} </td>
</tr>
</table> </table>
<table>
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr> <tr>
<td> <td style="">
<h2 style=" text-transform: uppercase;">Loaksi Jaminan</h2> <h6 style="text-transform: uppercase; margin: 0; ">HASIL Kunjungan</h6>
</td> </td>
</tr> </tr>
</table> </table>
<table style="width: 100%">
<table style="width: 100%">
<tr> <tr>
<td style="width: 20%; padding: 2px;">Terletak di</td> <td style="width: 20%; padding: 2px;">Tanggal Kunjungan</td>
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;"> {{ $memo['lokasi']['address'] ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</td>
</tr> </tr>
<tr> <tr>
<td style="width: 20%; padding: 2px;">Kelurahan</td> <td style="width: 20%; padding: 2px;">Surveyor</td>
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $alamat['village_code'] ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $surveyor->userPenilaiTeam->name ?? '' }}</td>
</tr> </tr>
<tr> <tr>
<td style="width: 20%; padding: 2px;">Kecamatan</td> <td style="width: 20%; padding: 2px;">Pihak Pemohon</td>
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $alamat['district_code'] ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $permohonan->user->name ?? '' }} -
{{ $permohonan->debiture->branch->name ?? '' }}</td>
</tr> </tr>
<tr> <tr>
<td style="width: 20%; padding: 2px;">Kota</td> <td style="width: 20%; padding: 2px;">Pihak Cadeb/Debitur</td>
<td style="width: 1%; padding: 2px;">:</td> <td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;"> {{ $alamat['city_code'] ?? '' }}</td> <td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
</tr>
<tr>
<td style="width: 20%; padding: 2px;">Propinsi</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $alamat['province_code'] ?? '' }}</td>
</tr>
<tr>
<td style="width: 20%; padding: 2px;">Titik Kordinat</td>
<td style="width: 1%; padding: 2px;">:</td>
<td style="width: 79%; padding: 2px;">{{ $alamat['province_code'] ?? '' }}</td>
</tr> </tr>
</table> </table>
<table> <table>
<tr>
<td>
<h2 style=" text-transform: uppercase;">HASIL INSPEKSI</h2>
</td>
</tr>
<tr> <tr>
@isset($memo['hasil_survey']) @isset($memo['hasil_survey'])
@foreach ($memo['hasil_survey'] as $key => $item) @foreach ($memo['hasil_survey'] as $key => $item)
<tr> <tr>
<td>{{ $key + 1 }} . {{ $item }}</td> <td>{{ $item }}</td>
</tr> </tr>
@endforeach @endforeach
@endisset @endisset
</tr> </tr>
</table> </table>
<table> <table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr> <tr>
<td> <td style="">
<h2 style=" text-transform: uppercase;">KESIMPULAN DAN SARAN</h2> <h6 style="text-transform: uppercase; margin: 0; ">KESIMPULAN DAN SARAN</h6>
</td> </td>
</tr> </tr>
<tr> <tr>
@isset($memo['kesimpulan_saran']) @isset($memo['kesimpulan_saran'])
@foreach ($memo['kesimpulan_saran'] as $key => $item) @foreach ($memo['kesimpulan_saran'] as $key => $item)
<tr> <tr>
<td>{{ $key + 1 }} . {{ $item }}</td> <td> {{ $item }}</td>
</tr> </tr>
@endforeach @endforeach
@endisset @endisset
@@ -311,7 +331,7 @@
<table style="width: 100%"> <table style="width: 100%">
<tr> <tr>
<td>Demikian Kami Sampaikan, aatas perhatiannya kami ucapkan terimakasih</td> <td>Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih</td>
</tr> </tr>
<tr> <tr>
<table style="width: 100%; text-align: center;"> <table style="width: 100%; text-align: center;">
@@ -323,44 +343,32 @@
<td style="height: 50px"></td> <td style="height: 50px"></td>
</tr> </tr>
@php @php
$senior_officer = null;
if ($permohonan->debiture && $permohonan->debiture->documents) {
foreach ($permohonan->debiture->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;
}
}
}
}
}
}
}
use Modules\Usermanagement\Models\User; use Modules\Usermanagement\Models\User;
@endphp @endphp
<tr> <tr>
<td>{{ $penilai->userPenilaiTeam->name ?? '' }}</br> <td >{{ $penilai->userPenilaiTeam->name ?? '' }}</br>
Appraisal <span style="text-transform: uppercase; margin: 0; ">
PENILAI
</span>
</td> </td>
<td> {{ $senior_officer->name ?? '' }}</br> <td > {{ $senior_officer->name ?? '' }}</br>
SO Region <span style="text-transform: uppercase; margin: 0; ">
SENIOR OFFICER
</span>
</td> </td>
<td> {{ $senior_officer->name ?? '' }}</br> <td > {{ $senior_officer->name ?? '' }}</br>
EO Appraisal <span style="text-transform: uppercase; margin: 0; ">
EXECUTIVE OFFICER
</span>
</td> </td>
<td> {{ User::role('DD Appraisal')->first()->name ?? '' }}</br> <td > {{ User::role('DD Appraisal')->first()->name ?? '' }}</br>
Deputy Director <span style="text-transform: uppercase; margin: 0; ">
Deputy Director
</span>
</td> </td>
</tr> </tr>
</table> </table>

View File

@@ -7,9 +7,8 @@
<meta http-equiv="X-UA-Compatible" content="ie=edge"> <meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Laporan Penilai Jaminan</title> <title>Laporan Penilai Jaminan</title>
<style> <style>
* { * {
font-family: Arial, Helvetica, sans-serif; font-family: Arial, Helvetica, sans-serif;
font-size: 10px; font-size: 10px;
} }
@@ -109,12 +108,33 @@
<body style="width: 80%; margin: auto"> <body style="width: 80%; margin: auto">
@php @php
$data = ''; $data = '';
foreach ($permohonan->debiture->documents as $dokumen) { foreach ($permohonan->debiture->documents as $dokumen) {
$data .= $dokumen->jenisJaminan->name . ', '; $data .= $dokumen->jenisJaminan->name . ', ';
}
$data = rtrim($data, ', '); $penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first();
@endphp $surveyor = $permohonan->penilaian->userPenilai->where('role', 'surveyor')->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;
}
}
}
}
}
}
$data = rtrim($data, ', ');
@endphp
<header id="header"> <header id="header">
<table style="width: 100%; border: none;"> <table style="width: 100%; border: none;">
<tr> <tr>
@@ -128,20 +148,22 @@
<main class="content"> <main class="content">
<table style="width: 100%"> <table style="width: 100%">
<tr> <tr>
<td> <td style="text-align: center; margin-top: 5px;">
<h2 style="text-decoration: underline; text-transform: uppercase; text-align: center;">Resume <h2 style="text-decoration: underline; text-transform: uppercase; text-align: center; margin: 0;">Resume
Penilaian Penilaian
</h2> </h2>
<p style="font-size: 12px; margin: 0;">NO: {{ $nomorLaporan }}</p>
</td> </td>
</tr> </tr>
</table> </table>
<table > <table>
<tr> <tr>
<td style="width: 20%">Pemohon</td> <td style="width: 20%">Pemohon</td>
<td style="width: 1%">:</td> <td style="width: 1%">:</td>
<td style="width: 100%">{{ $permohonan->user->name ?? '' }}</td> <td style="width: 100%">{{ $permohonan->user->name ?? '' }} -
{{ $permohonan->debiture->branch->name ?? '' }}</td>
</tr> </tr>
<tr> <tr>
@@ -157,7 +179,8 @@
<tr> <tr>
<td>Lokasi Objek</td> <td>Lokasi Objek</td>
<td>:</td> <td>:</td>
<td>{{ $alamat['village_code'] ?? '' }}, {{ $alamat['district_code'] ?? '' }}, {{ $alamat['city_code'] ?? '' }}, {{ $alamat['province_code'] ?? '' }}</td> <td>{{ $alamat['village_code'] ?? '' }}, {{ $alamat['district_code'] ?? '' }},
{{ $alamat['city_code'] ?? '' }}, {{ $alamat['province_code'] ?? '' }}</td>
</tr> </tr>
<tr> <tr>
<td style="vertical-align: top; padding:2px;">Dokumen</td> <td style="vertical-align: top; padding:2px;">Dokumen</td>
@@ -195,98 +218,156 @@
</tr> </tr>
<tr> <tr>
@php @php
$cekLuas = isset( $cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) ? 'tidak sesuai' : 'sesuai';
$forminspeksi['tanah']['luas_tanah']['tidak sesuai'],
)
? 'tidak sesuai'
: 'sesuai';
$luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null; $luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
@endphp @endphp
<td>Luas Tanah</td> <td>Luas Tanah</td>
<td>:</td> <td>:</td>
<td>{{ $luas ?? '' }}</td> <td>{{ $luas ?? '' }}</td>
</tr> </tr>
<tr> <tr>
<td>Tanggal Kunjungan</td> <td>Tanggal Survey</td>
<td>:</td> <td>:</td>
<td>{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</td> <td>{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</td>
</tr> </tr>
<tr>
<td>Tanggal Resume</td>
<td>:</td>
<td>{{ formatTanggalIndonesia($resumeData['tanggal_resume']) ?? '' }}</td>
</tr>
</table> </table>
<table> <table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr> <tr>
<td> <td style="">
<h2 style=" text-transform: uppercase;">Faktor Positif</h2> <h6 style="text-transform: uppercase; margin: 0; ">Faktor Positif</h2>
</td> </td>
</tr> </tr>
<tr> <tr>
@isset($resumeData['fakta']['fakta_positif']) @isset($resumeData['fakta']['fakta_positif'])
@foreach ($resumeData['fakta']['fakta_positif'] as $key => $item) @foreach ($resumeData['fakta']['fakta_positif'] as $key => $item)
<tr> <tr>
<td>{{ $key + 1 }} . {{ $item }}</td> <td>{{ $key + 1 }} . {{ $item }}</td>
</tr> </tr>
@endforeach @endforeach
@endisset @endisset
</tr> </tr>
</table> </table>
<table> <table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr> <tr>
<td> <td style="">
<h2 style=" text-transform: uppercase;">Faktor negatif</h2> <h6 style="text-transform: uppercase; margin: 0; ">Faktor negatif</h2>
</td> </td>
</tr> </tr>
<tr> <tr>
@isset($resumeData['fakta']['fakta_negatif']) @isset($resumeData['fakta']['fakta_negatif'])
@foreach ($resumeData['fakta']['fakta_negatif'] as $key => $item) @foreach ($resumeData['fakta']['fakta_negatif'] as $key => $item)
<tr> <tr>
<td>{{ $key + 1 }} . {{ $item }}</td> <td>{{ $key + 1 }} . {{ $item }}</td>
</tr> </tr>
@endforeach @endforeach
@endisset @endisset
</tr> </tr>
</table> </table>
<table style="width: 100%">
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr> <tr>
<td> <td style="">
<h2 style=" text-transform: uppercase;">Nilai Pasar Wajar</h2> <h3 style="text-transform: uppercase; margin: 0; ">Kesimpulan Nilai Pasar Wajar</h2>
</td> </td>
<td>:</td> <td>:</td>
<td></td> <td></td>
</tr> </tr>
</table> </table>
<table border="1" style="width: 100%">
<tr>
<td>
Keterangan
</td>
<td>
Nilai Pasar Wajar
</td>
<td>
Nilai Likudasi
</td>
</tr>
<tr>
@foreach ($resumeData['fisik'] as $item)
<td>
{{ $item['sertifikat'] ?? '' }}
</td>
<td>
{{ $item['nilai'] ?? '' }}
</td>
<td>
-
</td>
@endforeach
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr>
<td style="">
<h6 style="text-transform: uppercase; margin: 0; ">1. Sesuai Fisik</h6>
</td>
</tr> </tr>
</table> </table>
<table>
<table border="1" style="width: 100%; border-collapse: collapse; margin-bottom: 10px;">
<tr> <tr>
<td> <td style="border: 1px solid #000; padding: 4px;">Sertifikat</td>
<h2 style=" text-transform: uppercase;">lain lain</h2> <td style="border: 1px solid #000; padding: 4px;">Luas Tanah ()</td>
<td style="border: 1px solid #000; padding: 4px;">Luas Bangunan ()</td>
<td style="border: 1px solid #000; padding: 4px;">Nilai Pasar Wajar (Rp)</td>
</tr>
@foreach ($resumeData['fisik'] as $item)
<tr>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['sertifikat'] ?? '' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['luas_tanah'] ?? '' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['luas_bangunan'] ?? '' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['nilai'] ?? '' }}</td>
</tr>
@endforeach
</table>
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr>
<td style="">
<h6 style="text-transform: uppercase; margin: 0; ">2. Sesuai IMB</h6>
</td>
</tr>
</table>
<table border="1" style="width: 100%; border-collapse: collapse; margin-bottom: 10px;">
<tr>
<td style="border: 1px solid #000; padding: 4px;">Sertifikat</td>
<td style="border: 1px solid #000; padding: 4px;">Luas Tanah ()</td>
<td style="border: 1px solid #000; padding: 4px;">Luas Bangunan ()</td>
<td style="border: 1px solid #000; padding: 4px;">Nilai Pasar Wajar (Rp)</td>
</tr>
@foreach ($resumeData['sesuai_imb'] as $item)
<tr>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['sertifikat'] ?? '' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['luas_tanah'] ?? '' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['luas_bangunan'] ?? '' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['nilai'] ?? '' }}</td>
</tr>
@endforeach
</table>
@if (!empty($resumeData['tambahan']))
@foreach ($resumeData['tambahan'] as $index => $item)
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr>
<td style="">
<h6 style="text-transform: uppercase; margin: 0; ">
{{ $index + 3 }}. {{ $item['tambahan_nama_kesimpulan'] ?? '-' }}
</h6>
</td>
</tr>
</table>
<table border="1" style="width: 100%; border-collapse: collapse; margin-bottom: 1px;">
<tr>
<td style="border: 1px solid #000; padding: 4px;">Sertifikat</td>
<td style="border: 1px solid #000; padding: 4px;">Luas Tanah ()</td>
<td style="border: 1px solid #000; padding: 4px;">Luas Bangunan ()</td>
<td style="border: 1px solid #000; padding: 4px;">Nilai Pasar Wajar (Rp)</td>
</tr>
<tr>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['sertifikat'] ?? '-' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['luas_tanah'] ?? '-' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['luas_bangunan'] ?? '-' }}</td>
<td style="border: 1px solid #000; padding: 4px;">{{ $item['nilai'] ?? '-' }}</td>
</tr>
</table>
@endforeach
@endif
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
<tr>
<td style="">
<h6 style="text-transform: uppercase; margin: 0; ">lain lain</h2>
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -295,11 +376,40 @@
</table> </table>
<table style="width: 100%"> <table style="width: 100%">
<tr>
<td>
<table>
<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;">LAPORAN RESUME INI DIKELUARKAN DIKARENAKAN BELUM
DILAKUKANNYA PEMBAYARAN BIAYA PENILAIAN JAMINAN</li>
<li style="margin-bottom: 5px;">LAPORAN RESUME INI TIDAK BISA DIJADIKAN SEBAGAI
DASAR PENGAJUAN DAN ATAU PENCAIRAN KREDIT, LAPORAN YANG DIGUNAKAN TETAP WAJIB
BERUPA LAPORAN PENILAIAN JAMINAN (LPJ)</li>
<li style="margin-bottom: 5px;">DETAIL PER METER TANAH DAN BANGUNAN, SARANA
PELENGKAP DLL AKAN TERCATAT DI LAPORAN PENILAIAN JAMINAN (LPJ) NANTI</li>
<li style="margin-bottom: 5px;">LAPORAN RESUME INI HANYA DIGUNAKAN UNTUK KEPENTINGAN
INTERNAL BAGI</li>
<li style="margin-bottom: 5px;">LAPORAN RESUME INI HANYA BERLAKU <span style="color:red;">14 HARI KALENDER </span>
TERHITUNG DARI TANGGAL RESUME INI DIBUAT SESUAI ATURAN YANG BERLAKU, APABILA
LEWAT MAKA HARUS DILAKUKAN ORDER ULANG SESUAI PROSEDUR YANG BERLAKU</li>
<li style="margin-bottom: 5px;">Apabila sudah melewati 6 bulan, maka harus penilaian
ulang kembali</li>
</ol>
</div>
</div>
</table>
</td>
</tr>
<tr> <tr>
<td>Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih</td> <td>Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih</td>
</tr> </tr>
<tr> <tr>
<table style="width: 100%; text-align: center;" > <table style="width: 100%; text-align: center;">
<tr> <tr>
<td style="height: 50px"></td> <td style="height: 50px"></td>
<td style="height: 50px"></td> <td style="height: 50px"></td>
@@ -307,10 +417,20 @@
</tr> </tr>
<tr> <tr>
<td>{{ $penilai->userPenilaiTeam->name ?? '' }}</br> <td>{{ $penilai->userPenilaiTeam->name ?? '' }}</br>
Appraisal PENILAI
</td> </td>
<td> {{ $senior_officer->name ?? '' }}</br> <td> {{ $senior_officer->name ?? '' }}</br>
SO Region SENIOR OFFICER
</td>
@php
use Modules\Usermanagement\Models\User;
@endphp
<td> {{ User::role('EO Appraisal')->first()->name ?? '' }}</br>
EXECUTIVE OFFICER
</td>
<td> {{ $surveyor->userPenilaiTeam->name ?? '' }}</br>
SURVEYOR
</td> </td>
</tr> </tr>
</table> </table>
@@ -328,8 +448,8 @@
</div> </div>
</main> </main>
<footer> <footer id="footer">
Cabang : {{ $permohonan->debiture->branch->name ?? '' }}
</footer> </footer>
</body> </body>

View File

@@ -5,22 +5,21 @@
@endsection @endsection
@section('content') @section('content')
<style> <style>
.list-decimal { .list-decimal {
list-style-type: decimal; list-style-type: decimal;
margin: 0; margin: 0;
padding-left: 1.25rem; padding-left: 1.25rem;
line-height: 1.6; line-height: 1.6;
font-family: Arial, sans-serif; font-family: Arial, sans-serif;
font-size: 16px; font-size: 16px;
color: #333333; color: #333333;
} }
.list-decimal li { .list-decimal li {
margin-bottom: 0.5rem; margin-bottom: 0.5rem;
} }
</style>
</style>
@include('lpj::assetsku.includenya') @include('lpj::assetsku.includenya')
<div class="w-full grid gap-5 lg:gap-7.5 mx-auto"> <div class="w-full grid gap-5 lg:gap-7.5 mx-auto">
<form id="formResume" method="POST" class="w-full grid gap-5"> <form id="formResume" method="POST" class="w-full grid gap-5">
@@ -76,7 +75,7 @@
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5"> <div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Nomor Laporan</label> <label class="form-label max-w-56">Nomor Laporan</label>
<div class="flex flex-wrap items-base line w-full"> <div class="flex flex-wrap items-base line w-full">
<p class="text-2sm text-gray-700">{{ $permohonan->nomor_registrasi }}</p> <p class="text-2sm text-gray-700">{{ $nomorLaporan ?? '' }}</p>
</div> </div>
</div> </div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5"> <div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
@@ -87,6 +86,14 @@
@endif @endif
</div> </div>
</div> </div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">Tanggal Resume</label>
<div class="flex flex-wrap items-baseline w-full">
<input type="date" name="tanggal_resume" class="input w-full" placeholder="Masukkan..."
value="{{ $resumeData['tanggal_resume'] ?? '' }}">
</div>
</div>
</div> </div>
</div> </div>
<div class="card"> <div class="card">
@@ -165,7 +172,7 @@
<div class="card-body grid gap-5"> <div class="card-body grid gap-5">
<div class="gird gap-5"> <div class="gird gap-5">
<label class="form-label max-w-56">1. SESUAI FISIK</label> <label class="form-label max-w-56">SESUAI FISIK</label>
<div class="flex flex-wrap items-baseline w-full mt-5"> <div class="flex flex-wrap items-baseline w-full mt-5">
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm"> <table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm">
<thead> <thead>
@@ -222,7 +229,7 @@
</div> </div>
<div class="gird gap-5"> <div class="gird gap-5">
<label class="form-label max-w-56">2. SESUAI IMB</label> <label class="form-label max-w-56">SESUAI IMB</label>
<div class="flex flex-wrap items-baseline w-full"> <div class="flex flex-wrap items-baseline w-full">
<table <table
@@ -284,25 +291,32 @@
</div> </div>
@if (!empty($resumeData['tambahan'])) @if (!empty($resumeData['tambahan']))
<div class="gird gap-5"> @foreach ($resumeData['tambahan'] as $item)
<label class="form-label max-w-56">3. Tambahan</label> <div id="kesimpulan" class="gird gap-5">
<div class="flex flex-wrap items-baseline w-full">
<table <div class="flex flex-wrap items-baseline w-full">
class="table table-auto table-border align-middle text-gray-700 font-medium text-sm mt-5">
<thead>
<tr>
<th class="text-center">Sertipikat</th>
<th class="text-center">Luas Tanah</th>
<th class="text-center">Luas Bangunan</th>
<th class="text-center">Nilai Pasar Wajar</th>
</tr> <table
</thead> class="table table-auto table-border align-middle text-gray-700 font-medium text-sm mt-5">
</thead> <input class="input" name="tambahan_nama_kesimpulan[]"
<tbody> placeholder="Masukkan Nama Kesimpulan" type="text" value="{{ $item['tambahan_nama_kesimpulan'] ?? ''}}">
@if (!empty($resumeData['tambahan']))
@foreach ($resumeData['tambahan'] as $item)
<thead>
<tr>
<th class="text-center">Sertipikat</th>
<th class="text-center">Luas Tanah</th>
<th class="text-center">Luas Bangunan</th>
<th class="text-center">Nilai Pasar Wajar</th>
</tr>
</thead>
</thead>
<tbody>
@if (!empty($resumeData['tambahan']))
{{-- @foreach ($resumeData['tambahan'] as $item) --}}
<tr> <tr>
<td class="text-center"> <td class="text-center">
<input type="text" name="tambahan_sertifikat[]" <input type="text" name="tambahan_sertifikat[]"
@@ -324,12 +338,12 @@
class="input number-format" value="{{ $item['nilai'] }}"> class="input number-format" value="{{ $item['nilai'] }}">
</td> </td>
</tr> </tr>
@endforeach @endif
@endif </tbody>
</tbody> </table>
</table> </div>
</div> </div>
</div> @endforeach
@endif @endif
<div> <div>
@@ -354,44 +368,44 @@
</label> </label>
<div class="input-group w-full flex gap-2"> <div class="input-group w-full flex gap-2">
<ol class="list-decimal pl-5 space-y-2"> <ol class="list-decimal pl-5 space-y-2">
<li>LAPORAN RESUME INI DIKELUARKAN DIKARENAKAN BELUM DILAKUKANNYA PEMBAYARAN BIAYA PENILAIAN JAMINAN <li>LAPORAN RESUME INI DIKELUARKAN DIKARENAKAN BELUM DILAKUKANNYA PEMBAYARAN BIAYA PENILAIAN
JAMINAN
</li> </li>
<li>LAPORAN RESUME INI TIDAK BISA DIJADIKAN SEBAGAI DASAR PENGAJUAN DAN ATAU PENCAIRAN KREDIT, LAPORAN YANG <li>LAPORAN RESUME INI TIDAK BISA DIJADIKAN SEBAGAI DASAR PENGAJUAN DAN ATAU PENCAIRAN
KREDIT, LAPORAN YANG
DIGUNAKAN TETAP WAJIB BERUPA LAPORAN PENILAIAN JAMINAN (LPJ) DIGUNAKAN TETAP WAJIB BERUPA LAPORAN PENILAIAN JAMINAN (LPJ)
</li> </li>
<li>DETAIL PER METER TANAH DAN BANGUNAN, SARANA PELENGKAP DLL AKAN TERCATAT DI LAPORAN PENILAIAN JAMINAN <li>DETAIL PER METER TANAH DAN BANGUNAN, SARANA PELENGKAP DLL AKAN TERCATAT DI LAPORAN
PENILAIAN JAMINAN
(LPJ) NANTI (LPJ) NANTI
</li> </li>
<li>LAPORAN RESUME INI HANYA DIGUNAKAN UNTUK KEPENTINGAN INTERNAL BAGI <li>LAPORAN RESUME INI HANYA DIGUNAKAN UNTUK KEPENTINGAN INTERNAL BAGI
</li> </li>
<li>LAPORAN RESUME INI HANYA BERLAKU 14 HARI KALENDER TERHITUNG DARI TANGGAL RESUME INI DIBUAT SESUAI ATURAN <li>LAPORAN RESUME INI HANYA BERLAKU 14 HARI KALENDER TERHITUNG DARI TANGGAL RESUME INI
YANG BERLAKU, APABILA LEWAT MAKA HARUS DILAKUKAN ORDER ULANG SESUAI PROSEDUR YANG BERLAKU DIBUAT SESUAI ATURAN
</li> YANG BERLAKU, APABILA LEWAT MAKA HARUS DILAKUKAN ORDER ULANG SESUAI PROSEDUR YANG
BERLAKU
</li>
<li>Apabila sudah melewati 6 bulan, maka harus penilaian ulang kembali <li>Apabila sudah melewati 6 bulan, maka harus penilaian ulang kembali
</li> </li>
</ol> </ol>
</div> </div>
</div>
<div class="flex card-footer justify-end gap-5">
<button type="button" class="btn btn-success" onclick="saveResume()">Save</button>
@if (Auth::user()->hasAnyRole(['senior-officer', 'EO Appraisal', 'DD Appraisal']))
<a class="btn btn-info"
href="{{ route('penilai.lampiran') }}?permohonanId={{ request('permohonanId') }}&documentId={{ request('documentId') }}&inspeksiId={{ request('inspeksiId') }}&jaminanId={{ request('jaminanId') }}&statusLpj=1">
LAMPIRAN FOTO DAN DOKUMEN
</a>
<a class="btn btn-primary"
onclick="checkLaporan('{{ $permohonan->id }}', '{{ request('documentId') }}', '{{ request('inspeksiId') }}', {{ request('jaminanId') }}, )">
<i class="ki-filled ki-printer"></i> Print
</a>
@endif
</div>
</div> </div>
<div class="flex card-footer justify-end gap-5">
<button type="button" class="btn btn-success" onclick="saveResume()">Save</button>
@if (Auth::user()->hasAnyRole(['senior-officer', 'EO Appraisal', 'DD Appraisal']))
<a class="btn btn-info"
href="{{ route('penilai.lampiran') }}?permohonanId={{ request('permohonanId') }}&documentId={{ request('documentId') }}&inspeksiId={{ request('inspeksiId') }}&jaminanId={{ request('jaminanId') }}&statusLpj=1">
LAMPIRAN FOTO DAN DOKUMEN
</a>
<a class="btn btn-primary"
onclick="checkLaporan('{{ $permohonan->id }}', '{{ request('documentId') }}', '{{ request('inspeksiId') }}', {{ request('jaminanId') }}, )">
<i class="ki-filled ki-printer"></i> Print
</a>
@endif
</div>
</div>
</form> </form>
</div> </div>
@@ -405,11 +419,17 @@
kesimpulan.innerHTML += ` kesimpulan.innerHTML += `
<div class="grid gap-5 w-full" id="kesimpulan-${counter}"> <div class="grid gap-5 w-full" id="kesimpulan-${counter}">
<label class="form-label kesimpulan max-w-56">${counter}. Tambahan</label>
<div class="flex flex-wrap items-baseline w-full"> <div class="flex flex-wrap items-baseline w-full">
<div class="tabel-container w-full"> <div class="tabel-container w-full">
<table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm mt-5"> <table class="table table-auto table-border align-middle text-gray-700 font-medium text-sm mt-5">
<input type="text" name="tambahan_nama_kesimpulan[]"
class="input number-format">
<thead> <thead>
<tr> <tr>
<th class="text-center">Sertipikat</th> <th class="text-center">Sertipikat</th>
<th class="text-center">Luas Tanah</th> <th class="text-center">Luas Tanah</th>
@@ -419,7 +439,7 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr>
<td class="text-center"> <td class="text-center">
<input type="text" name="tambahan_sertifikat[]" <input type="text" name="tambahan_sertifikat[]"
class="input number-format"> class="input number-format">
@@ -537,6 +557,7 @@
function formToJson(formElement) { function formToJson(formElement) {
const formData = new FormData(formElement); const formData = new FormData(formElement);
const jsonData = { const jsonData = {
tanggal_resume: "",
fakta: { fakta: {
fakta_positif: [], fakta_positif: [],
fakta_negatif: [] fakta_negatif: []
@@ -547,6 +568,7 @@
keterangan: "" keterangan: ""
}; };
// Ambil fakta positif // Ambil fakta positif
document.querySelectorAll('textarea[name="fakta_positif[]"]').forEach(textarea => { document.querySelectorAll('textarea[name="fakta_positif[]"]').forEach(textarea => {
jsonData.fakta.fakta_positif.push(textarea.value); jsonData.fakta.fakta_positif.push(textarea.value);
@@ -583,8 +605,10 @@
} }
}); });
document.querySelectorAll('table tbody tr').forEach(row => { document.querySelectorAll('#kesimpulan > div').forEach(row => {
const imbData = { const imbData = {
tambahan_nama_kesimpulan: row.querySelector('input[name="tambahan_nama_kesimpulan[]"]')
?.value || "",
sertifikat: row.querySelector('input[name="tambahan_sertifikat[]"]')?.value || "", sertifikat: row.querySelector('input[name="tambahan_sertifikat[]"]')?.value || "",
luas_tanah: row.querySelector('input[name="tambahan_luas_tanah[]"]')?.value || "", luas_tanah: row.querySelector('input[name="tambahan_luas_tanah[]"]')?.value || "",
luas_bangunan: row.querySelector('input[name="tambahan_luas_bangunan[]"]')?.value || "", luas_bangunan: row.querySelector('input[name="tambahan_luas_bangunan[]"]')?.value || "",
@@ -600,6 +624,9 @@
const keterangan = formElement.querySelector('textarea[name="keterangan"]')?.value || ""; const keterangan = formElement.querySelector('textarea[name="keterangan"]')?.value || "";
jsonData.keterangan = keterangan; jsonData.keterangan = keterangan;
const tanggal_resume = formElement.querySelector('input[name="tanggal_resume"]')?.value || "";
jsonData.tanggal_resume = tanggal_resume;
return jsonData; return jsonData;
} }

View File

@@ -288,8 +288,16 @@
</div> </div>
<div class="flex justify-end gap-5"> <div class="flex justify-end gap-5">
<a class="btn btn-outline btn-info "
onclick="checkLaporan('{{ $permohonan->id }}', '{{ $dokumen->id }}', '{{ $inspeksiId }}', {{ $dokumen->jenis_jaminan_id }}, 1 )">
<i class="ki-filled ki-eye"></i>
PRIVIEW
</a>
<a class="btn btn-success" <a class="btn btn-success"
onclick="checkLaporan('{{ $permohonan->id }}', '{{ $dokumen->id }}', '{{ $inspeksiId }}', {{ $dokumen->jenis_jaminan_id }}, )"> onclick="checkLaporan('{{ $permohonan->id }}', '{{ $dokumen->id }}', '{{ $inspeksiId }}', {{ $dokumen->jenis_jaminan_id }}, 0 )">
<i class="ki-filled ki-printer"></i>
PRINT OUT PRINT OUT
</a> </a>
</div> </div>

View File

@@ -36,8 +36,7 @@
@csrf @csrf
<input type="hidden" value="{{ $permohonan->id }}" name="permohonan_id"> <input type="hidden" value="{{ $permohonan->id }}" name="permohonan_id">
<input type="hidden" name="dokument_id" value="{{ request('dokument') }}"> <input type="hidden" name="dokument_id" value="{{ request('dokument') }}">
<input type="hidden" name="nomor_registrasi" value="{{ $permohonan->nomor_registrasi }}">
<!-- Container untuk daftar denah -->
<!-- Container untuk daftar denah --> <!-- Container untuk daftar denah -->
<div id="denah-container"> <div id="denah-container">
@if (isset($formDenah['denahs']) && is_array($formDenah['denahs']) && count($formDenah['denahs']) > 0) @if (isset($formDenah['denahs']) && is_array($formDenah['denahs']) && count($formDenah['denahs']) > 0)

View File

@@ -146,7 +146,7 @@
<form id="formFoto" method="POST" class="grid gap-5" enctype="multipart/form-data"> <form id="formFoto" method="POST" class="grid gap-5" enctype="multipart/form-data">
<input type="hidden" name="permohonan_id" value="{{ $permohonan->id }}"> <input type="hidden" name="permohonan_id" value="{{ $permohonan->id }}">
<input type="hidden" name="dokument_id" value="{{ request('dokument') }}"> <input type="hidden" name="dokument_id" value="{{ request('dokument') }}">
<input type="hidden" name="nomor_registrasi" value="{{ $permohonan->nomor_registrasi }}">
<div class="card border border-agi-100 bg-white rounded-lg shadow-md"> <div class="card border border-agi-100 bg-white rounded-lg shadow-md">

View File

@@ -11,10 +11,12 @@
@csrf @csrf
<input type="hidden" name="permohonan_id" value="{{ $permohonan->id }}"> <input type="hidden" name="permohonan_id" value="{{ $permohonan->id }}">
<input type="hidden" name="dokument_id" value="{{ request('dokument') }}"> <input type="hidden" name="dokument_id" value="{{ request('dokument') }}">
<input type="hidden" name="nomor_registrasi" value="{{ $permohonan->nomor_registrasi }}">
@if (strtolower($permohonan->tujuanPenilaian->name) == 'rap') @if (strtolower($permohonan->tujuanPenilaian->name) == 'rap')
<input type="hidden" name="action" value="rap"> <input type="hidden" name="action" value="rap">
<input type="hidden" name="type" value="rap"> <input type="hidden" name="type" value="rap">
@include('lpj::surveyor.components.header') @include('lpj::surveyor.components.header')
@include('lpj::surveyor.components.rap') @include('lpj::surveyor.components.rap')
@else @else
@@ -59,7 +61,7 @@
@push('scripts') @push('scripts')
<script type="text/javascript"> <script type="text/javascript">
function updateAlamatFields(status) { function updateAlamatFields(status) {
// Ambil elemen formulir // Ambil elemen formulir

View File

@@ -304,7 +304,7 @@
} }
function checkLaporan(permohonanId, documentId, inspeksiId, jaminanId) { function checkLaporan(permohonanId, documentId, inspeksiId, jaminanId, statusLpj) {
// showLoadingSwal('Tunggu...'); // showLoadingSwal('Tunggu...');
fetch( fetch(
`{{ url('/penilai/check-laporan') }}?permohonanId=${permohonanId}&documentId=${documentId}&inspeksiId=${inspeksiId}` `{{ url('/penilai/check-laporan') }}?permohonanId=${permohonanId}&documentId=${documentId}&inspeksiId=${inspeksiId}`
@@ -315,7 +315,7 @@
// Jika laporan ada, arahkan ke halaman cetak // Jika laporan ada, arahkan ke halaman cetak
window.location.href = window.location.href =
`{{ route('penilai.print-out') }}?permohonanId=${permohonanId}&documentId=${documentId}&inspeksiId=${inspeksiId}&jaminanId=${jaminanId}&statusLpj=0&type=${data.status}`; `{{ route('penilai.print-out') }}?permohonanId=${permohonanId}&documentId=${documentId}&inspeksiId=${inspeksiId}&jaminanId=${jaminanId}&statusLpj=${statusLpj}&type=${data.status}`;
} else { } else {
// Jika laporan belum ada, tampilkan pesan peringatan // Jika laporan belum ada, tampilkan pesan peringatan
Swal.fire({ Swal.fire({