diff --git a/app/Http/Controllers/PenilaiController.php b/app/Http/Controllers/PenilaiController.php index 2461cb0..df7265e 100644 --- a/app/Http/Controllers/PenilaiController.php +++ b/app/Http/Controllers/PenilaiController.php @@ -52,7 +52,7 @@ class PenilaiController extends Controller $permohonanId = $request->query('permohonanId'); $documentId = $request->query('documentId'); $jaminanId = $request->query('jaminanId'); - + $basicData = $this->surveyorController->getCommonData(); $permohonan = $this->surveyorController->getPermohonanJaminanId($permohonanId, $documentId, $jaminanId); $inpeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); @@ -62,7 +62,7 @@ class PenilaiController extends Controller $forminspeksi = json_decode($inpeksi->data_form, true); } - return view('lpj::penilai.lampiran', compact('permohonan', 'formFoto', 'forminspeksi')); + return view('lpj::penilai.lampiran', compact('permohonan', 'formFoto', 'forminspeksi','basicData')); } public function create() @@ -1043,7 +1043,7 @@ class PenilaiController extends Controller if ($statusLpj) { // $pdf = view('lpj::' . $viewLaporan, compact( - $pdf = PDF::loadView('lpj::' . $viewLaporan, compact( + $pdf = PDF::loadView('lpj::' . $viewLaporan, compact( 'permohonan', 'forminspeksi', 'lpjData', diff --git a/app/Http/Controllers/SurveyorController.php b/app/Http/Controllers/SurveyorController.php index 7d7bfae..a913c1b 100644 --- a/app/Http/Controllers/SurveyorController.php +++ b/app/Http/Controllers/SurveyorController.php @@ -340,18 +340,6 @@ class SurveyorController extends Controller { $validatedData = $this->validateFotoRequest($request); try { - $log = []; - $photoCategories = [ - 'rute_menuju_lokasi', - 'foto_lingkungan', - ]; - - $lainnya = [ - 'foto_rute_lainnya' => ['foto_rute_lainnya', 'name_rute_lainnya'], - 'foto_lantai_lainnya' => ['foto_lantai_lainnya', 'name_lantai_lainnya'] - ]; - - $inspeksi = Inspeksi::firstOrNew([ 'permohonan_id' => $request->input('permohonan_id'), 'dokument_id' => $request->input('dokument_id') @@ -361,62 +349,23 @@ class SurveyorController extends Controller ? json_decode($inspeksi->foto_form, true) : []; - $formatFotojson = $existingData; + + + if (!$this->isValidFormat($existingData)) { + $existingData = []; + } // Upload berbagai jenis foto - $this->handleFileUpload($request, 'rute_menuju_lokasi', $formatFotojson); - $this->handleFileUpload($request, 'foto_lingkungan', $formatFotojson); + $newFoto = $this->handleFileUpload($request, 'upload_foto', $existingData); - $this->processFotoLantaiUnit($request, $formatFotojson); - - if ($request->hasFile('foto_objek')) { - $existingObjekJaminan = $formatFotojson['object_jaminan'] ?? []; - $formatFotojson['object_jaminan'] = $this->processObjekJaminanPhotos( - $request, - $existingObjekJaminan - ); - } - - foreach ($lainnya as $category => $fields) { - $photoField = $fields[0]; - $nameField = $fields[1]; - $descriptionField = $fields[2] ?? null; - - if ($request->hasFile($photoField)) { - $newPhotos = $this->processPhotoLainnya( - $request, - $fields, - $existingData[$category] ?? [] - ); - - $formatFotojson[$category] = $newPhotos; - } - } - // // Process single files - $singleFiles = ['foto_basement', 'foto_gerbang', 'pendamping']; - foreach ($singleFiles as $file) { - if ($request->hasFile($file)) { - // Hapus file lama jika ada - if (isset($formatFotojson[$file])) { - $this->deleteOfFile($formatFotojson[$file]); - } - - // Upload dan simpan file baru - $formatFotojson[$file] = $this->uploadFile($request->file($file), $file); - - } - } - - // Update record - if (!empty($formatFotojson)) { - $inspeksi->foto_form = json_encode($formatFotojson); + if (!empty($newFoto)) { + $inspeksi->foto_form = json_encode($existingData); $inspeksi->save(); return response()->json([ 'success' => true, 'message' => 'Data berhasil disimpan', - 'data' => $formatFotojson, - 'log' => $log + 'file' => $newFoto ], 200); } @@ -430,74 +379,107 @@ class SurveyorController extends Controller } /** - * Process a photo - */ - protected function processFotoLantaiUnit(Request $request, &$formatFotojson) + * Validasi apakah format JSON sesuai dengan yang diinginkan. + * + * @param array $data + * @return bool + */ + private function isValidFormat($data) { - // Pastikan foto_lantai_unit sudah ada di formatFotojson - if (!isset($formatFotojson['foto_lantai_unit'])) { - $formatFotojson['foto_lantai_unit'] = []; + if (!isset($data['upload_foto']) || !is_array($data['upload_foto'])) { + return false; } - // Ambil nama-nama lantai dari request - $lantaiNama = $request->input('lantai_nama', []); - - // Tambahan: gunakan lantai_index jika tersedia - $lantaiIndex = $request->input('lantai_index', null); - - // Cek apakah ada file foto lantai yang diunggah - $lantaiFiles = $request->file('foto_lantai_unit', []); - - // Proses setiap file foto lantai - foreach ($lantaiFiles as $index => $files) { - // Pastikan $files adalah array - if (!is_array($files)) { - $files = [$files]; - } - - // Gunakan lantai_index jika tersedia, jika tidak gunakan cara sebelumnya - $lantaiNomor = $lantaiIndex ?? ($index + 1); - - // Inisialisasi array untuk lantai ini jika belum ada - if (!isset($formatFotojson['foto_lantai_unit'][$lantaiNomor])) { - $formatFotojson['foto_lantai_unit'][$lantaiNomor] = []; - } - - foreach ($files as $fileIndex => $file) { - // Validasi file - if (!$file->isValid()) { - continue; // Lewati file yang tidak valid - } - - - // Generate nama file unik - $uniqueFileName = 'lantai_unit_' . $lantaiNomor . '_' . $fileIndex . '_' . Str::random(10) . '.' . $file->getClientOriginalExtension(); - - // Simpan file dengan nama asli - $path = $file->storeAs( - 'surveyor/lantai_unit', - $uniqueFileName . '/' . time() . '_' . $file->getClientOriginalName(), - 'public' - ); - - // Buat nama foto - $fotoName = "Foto Lantai {$lantaiNomor} - " . ($fileIndex + 1); - - // Tambahkan detail foto ke array - $fotoDetail = [ - 'path' => $path, - 'name' => $fotoName - ]; - - // Tambahkan ke array foto lantai unit sesuai struktur - $formatFotojson['foto_lantai_unit'][$lantaiNomor][] = $fotoDetail; - } - } - - return $formatFotojson; + return true; } + public function updateFoto(Request $request) + { + try { + // Validasi input + $validated = $request->validate([ + 'permohonan_id' => 'required', + 'dokument_id' => 'required|string', + 'name' => 'required|string|max:255', + 'description' => 'nullable|string', + 'category' => 'required|string|max:255', + 'sub' => 'nullable|string|max:255', + 'path' => 'nullable|string', + ]); + + $inspeksi = Inspeksi::firstOrNew([ + 'permohonan_id' => $validated['permohonan_id'], + 'dokument_id' => $validated['dokument_id'], + ]); + + $cleanRequestPath = str_replace('/storage/', '', $validated['path']); + + $fotoForm = json_decode($inspeksi->foto_form, true) ?? []; + + + if (!isset($fotoForm['upload_foto'])) { + $fotoForm['upload_foto'] = []; + } + + + $existingIndex = null; + if (!empty($validated['path'])) { + foreach ($fotoForm['upload_foto'] as $index => $foto) { + if ($foto['path'] === $cleanRequestPath) { + $existingIndex = $index; + break; + } + } + } + + // Siapkan data baru + $newFotoData = [ + 'name' => $validated['name'], + 'description' => $validated['description'], + 'category' => $validated['category'], + 'sub' => $validated['sub'], + 'path' => $cleanRequestPath, + 'created_by' => Auth::user()->name, + 'created_at' => now()->toDateTimeString(), + 'updated_by' => Auth::user()->name, + 'updated_at' => now()->toDateTimeString(), + ]; + + if ($existingIndex !== null) { + $existingFoto = $fotoForm['upload_foto'][$existingIndex]; + $fotoForm['upload_foto'][$existingIndex] = [ + 'name' => $validated['name'], + 'description' => $validated['description'], + 'category' => $validated['category'], + 'sub' => $validated['sub'], + 'path' => $cleanRequestPath, + 'created_by' => $existingFoto['created_by'] ?? Auth::user()->name, + 'created_at' => $existingFoto['created_at'] ?? now()->toDateTimeString(), + 'updated_by' => Auth::user()->name, + 'updated_at' => now()->toDateTimeString(), + ]; + } else { + $fotoForm['upload_foto'][] = $newFotoData; + } + + // Simpan kembali data ke database + $inspeksi->foto_form = json_encode($fotoForm); + $inspeksi->save(); + + return response()->json([ + 'success' => true, + 'message' => 'Data berhasil diperbarui.', + ], 200); + + } catch (\Exception $e) { + return response()->json([ + 'success' => false, + 'message' => 'Gagal memperbarui data: ' . $e->getMessage(), + ], 500); + } + } + private function handleFileUpload(Request $request, $paramName, &$formatFotojson) { @@ -510,45 +492,54 @@ class SurveyorController extends Controller } $formatFotoData = []; + $nomor_registrasi = $request->nomor_registrasi; foreach ($files as $index => $file) { - $timestamp = time(); $originalName = $file->getClientOriginalName(); - $uniqueFileName = "{$timestamp}_{$originalName}"; - + $extension = $file->getClientOriginalExtension(); + // Validasi nama file + if (empty($originalName)) { + $originalName = "file_{$timestamp}"; + } + $uniqueFileName = "{$timestamp}.{$extension}"; // Simpan file - $path = $file->storeAs("surveyor/{$paramName}", $uniqueFileName, 'public'); + $nomor_registrasi = $request->nomor_registrasi; + $path = $file->storeAs("surveyor/{$paramName}/{$nomor_registrasi}", $uniqueFileName, 'public'); $fotoData = [ + 'name' => pathinfo($originalName, PATHINFO_FILENAME), 'path' => $path, - 'name' => ucwords(str_replace('_', ' ', $paramName)) . ' - ' . ($index + 1) + 'category' => 'lainnya', + 'sub' => null, + 'description' => null, + 'created_by' => Auth::user()->name, + 'created_at' => now()->toDateTimeString(), ]; $formatFotoData[] = $fotoData; } // Struktur JSON yang konsisten - if (!isset($formatFotojson[$paramName][$paramName][0])) { - $formatFotojson[$paramName] = [ - $paramName => [ - $formatFotoData - ] - ]; + if (!isset($formatFotojson[$paramName])) { + $formatFotojson[$paramName] = $formatFotoData; } else { - $formatFotojson[$paramName][$paramName][0] = array_merge( - $formatFotojson[$paramName][$paramName][0] ?? [], + $formatFotojson[$paramName] = array_merge( + $formatFotojson[$paramName] ?? [], $formatFotoData ); } + return $formatFotoData; } return []; } + + public function hapusFoto(Request $request) { try { @@ -563,39 +554,35 @@ class SurveyorController extends Controller ); $fotoForm = json_decode($inspeksi->foto_form, true); - if (isset($fotoForm[$paramName][$paramName][0])) { - // Filter foto yang akan dihapus - - $tes = null; - $fotoForm[$paramName][$paramName][0] = array_values( - array_filter( - $fotoForm[$paramName][$paramName][0], - function ($foto) use ($cleanRequestPath) { - if ($foto['path'] === $cleanRequestPath) { - // Hapus file dari storage - \Storage::disk('public')->delete($cleanRequestPath); - return false; // Hapus elemen ini dari array - } - $tes = $foto['path']; - return true; + if (isset($fotoForm[$paramName]) && is_array($fotoForm[$paramName])) { + // Filter foto yang tidak sesuai dengan path yang akan dihapus + $fotoForm[$paramName] = array_values(array_filter( + $fotoForm[$paramName], + function ($foto) use ($cleanRequestPath) { + if ($foto['path'] === $cleanRequestPath) { + // Hapus file dari storage + \Storage::disk('public')->delete($cleanRequestPath); + return false; } - ) - ); + return true; + } + )); - - // Reset array index - $fotoForm[$paramName][$paramName][0] = array_values($fotoForm[$paramName][$paramName][0]); - - $inspeksi->foto_form = $fotoForm; + // Simpan kembali data ke database + $inspeksi->foto_form = json_encode($fotoForm); $inspeksi->save(); return response()->json([ 'success' => true, - 'message' => 'Foto berhasil dihapus', + 'message' => 'Foto berhasil dihapus', ], 200); } - return response()->json(['success' => false], 400); + // Jika parameter tidak ditemukan + return response()->json([ + 'success' => false, + 'message' => 'Foto atau parameter tidak ditemukan', + ], 400); } catch (\Exception $e) { return response()->json([ 'success' => false, @@ -622,37 +609,32 @@ class SurveyorController extends Controller $fotos = $this->findFotoByParamName($fotoForm, $paramName); - $param = $paramName == 'rute_menuju_lokasi' ? $fotos['rute_menuju_lokasi'][0] : $fotos['foto_lingkungan'][0]; $data = array_map(function ($foto) { return [ 'name' => $foto['name'] ?? 'Foto', - 'path' => \Storage::url($foto['path']), + 'path' => \Storage::url($foto['path'] ?? ''), + 'category' => $foto['category'] ?? 'lainnya', + 'sub' => $foto['sub'] ?? null, + 'description' => $foto['description'] ?? null, + 'upload_by' => $foto['upload_by'] ?? null, ]; - }, $param); + }, $fotos); return response()->json([ 'fotos' => $data, - 'success' => !empty($data) + 'success' => !empty($data), ]); } private function findFotoByParamName($fotoForm, $paramName) { // Mapping parameter name ke struktur JSON - $paramMapping = [ - 'rute_menuju_lokasi' => ['rute_menuju_lokasi'], - 'foto_lingkungan' => ['foto_lingkungan'], - ]; - - // // Traverse array menggunakan mapping - $fotos = $fotoForm; - if (isset($paramMapping[$paramName])) { - foreach ($paramMapping[$paramName] as $key) { - $fotos = $fotos[$key] ?? []; - } + if (isset($fotoForm[$paramName]) && is_array($fotoForm[$paramName])) { + return $fotoForm[$paramName]; // Kembalikan array foto jika ditemukan } - return is_array($fotos) ? $fotos : []; + // Jika parameter tidak ditemukan atau bukan array, kembalikan array kosong + return []; } @@ -784,38 +766,7 @@ class SurveyorController extends Controller ], 404); } - private function processPhotoLainnya(Request $request, array $fields, array $existingPhotos = []) - { - $result = $existingPhotos; // Start with existing photos - $photoField = $fields[0]; - $nameField = $fields[1]; - $descriptionField = $fields[2] ?? null; - if ($request->hasFile($photoField)) { - $newFiles = $request->file($photoField, []); - $newNames = $request->input($nameField, []); - $newDescriptions = $descriptionField ? $request->input($descriptionField, []) : []; - - // Process each new file - foreach ($newFiles as $key => $file) { - // Create new photo entry - $newPhotoEntry = [ - $nameField => $newNames[$key] ?? '', // Use new name if provided - $photoField => $this->uploadFile($file, $photoField . '.' . $key) - ]; - - // Add description if field exists - if ($descriptionField) { - $newPhotoEntry[$descriptionField] = $newDescriptions[$key] ?? ''; - } - - // Add to result - $result[] = $newPhotoEntry; - } - } - - return $result; - } private function generateUniqueFileName($file, $prefix = '') { @@ -839,27 +790,8 @@ class SurveyorController extends Controller return $request->validate([ 'permohonan_id' => 'required', 'dokument_id' => 'required', - 'pendamping' => 'nullable|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'foto_objek.*' => 'required|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'name_objek.*' => 'required|string|max:255', - - 'name_lingkungan.*' => 'required|string|max:255', + 'nomor_registrasi' => 'required', 'foto_rute.*' => 'required|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'name_rute.*' => 'required|string|max:255', - 'lantai.*' => 'nullable|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - - 'name_rute_lainnya.*' => 'nullable|string', - 'foto_rute_lainnya.*' => 'nullable|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'foto_lantai_lainnya.*' => 'nullable|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'name_lantai_lainnya.*' => 'nullable|string|max:255', - 'foto_basement.*' => 'nullable|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'name_basement.*' => 'nullable|string|max:255', - 'foto_gerbang' => 'nullable|image|mimes:jpeg,png,jpg,gif,svg,webp,bmp,tiff,heic,heif|max:'. $maxSize, - 'name_gerbang' => 'nullable|string|max:255', - - - 'name_lantai_unit' => 'array', - ]); } @@ -1487,6 +1419,8 @@ class SurveyorController extends Controller 'permohonan_id' => 'required|exists:permohonan,id', 'type' => 'required|string', 'dokument_id' => 'required', + 'name_foto_objek' => 'nullable|string', + 'nomor_registrasi' => 'required|string', 'foto_objek' => 'nullable|image|max:'.$maxSize, 'foto_objek_pembanding.*' => 'nullable|image|max:'.$maxSize, ]); @@ -1502,43 +1436,7 @@ class SurveyorController extends Controller $objekPenilaian = $this->formatObjekPenilaian($request); } if ($request->hasFile('foto_objek')) { - $newFoto = $this->handleupdateOrDeleteFile( - $request->file('foto_objek'), - $request['type'] = 'pembanding', - 'objek_penilaian' - ); - - // Update foto_form - $inspeksi = Inspeksi::where('permohonan_id', $request->input('permohonan_id')) - ->where('dokument_id', $request->input('dokument_id')) - ->first(); - - if ($inspeksi) { - $fotoForm = json_decode($inspeksi->foto_form, true) ?: []; - if (!isset($fotoForm['object_jaminan'])) { - $fotoForm['object_jaminan'] = []; - } - if (empty($fotoForm['object_jaminan'])) { - $fotoForm['object_jaminan'][] = [ - 'name_objek' => 'Tampak Depan Objek', - 'foto_objek' => $newFoto, - 'deskripsi_objek' => '' - ]; - } else { - // Update objek pertama dalam array object_jaminan - $fotoForm['object_jaminan'][0]['foto_objek'] = $newFoto; - - // Tambahkan nama dan deskripsi jika belum ada - if (!isset($fotoForm['object_jaminan'][0]['name_objek'])) { - $fotoForm['object_jaminan'][0]['name_objek'] = 'Tampak Depan Objek'; - } - } - - - $inspeksi->foto_form = json_encode($fotoForm); - $inspeksi->save(); - } - + $newFoto = $this->handleEditTampakDepan($request); $objekPenilaian['foto_objek'] = $newFoto; } @@ -1571,7 +1469,75 @@ class SurveyorController extends Controller } } + public function handleEditTampakDepan(Request $request) + { + $nomor_registrasi = $request->nomor_registrasi; + + // Ambil data inspeksi + $inspeksi = Inspeksi::where('permohonan_id', $request->input('permohonan_id')) + ->where('dokument_id', $request->input('dokument_id')) + ->firstOrFail(); + + // Bersihkan path dari request + $cleanRequestPath = str_replace('/storage/', '', $request['path']); + + // Ambil foto_form dari inspeksi + $fotoForm = json_decode($inspeksi->foto_form, true) ?? []; + $fotoForm['upload_foto'] = $fotoForm['upload_foto'] ?? []; + + $existingIndex = null; + if (!empty($request['path'])) { + foreach ($fotoForm['upload_foto'] as $index => $foto) { + if ($foto['path'] === $cleanRequestPath) { + $existingIndex = $index; + break; + } + } + } + + if ($request->hasFile('foto_objek')) { + $file = $request->file('foto_objek'); + $timestamp = time(); + $originalName = $file->getClientOriginalName(); + $extension = $file->getClientOriginalExtension(); + + // Validasi nama file + if (empty($originalName)) { + $originalName = "file_{$timestamp}"; + } + $uniqueFileName = "{$timestamp}.{$extension}"; + + // Simpan file ke penyimpanan publik + $path = $file->storeAs("surveyor/upload_foto/{$nomor_registrasi}", $uniqueFileName, 'public'); + + // Data baru untuk foto + $newFotoData = [ + 'name' => $originalName, + 'description' => null, + 'category' => 'Tampak Depan', + 'sub' => null, + 'path' => $path, + 'created_by' => Auth::user()->name, + 'created_at' => now()->toDateTimeString(), + 'updated_by' => Auth::user()->name, + 'updated_at' => now()->toDateTimeString(), + ]; + + // Update atau tambahkan data baru + if ($existingIndex !== null) { + $fotoForm['upload_foto'][$existingIndex] = $newFotoData; + } else { + $fotoForm['upload_foto'][] = $newFotoData; + } + + // Simpan kembali data ke database + $inspeksi->foto_form = json_encode($fotoForm); + $inspeksi->save(); + + return $path; + } + } /** * Form inspeksi. @@ -1707,6 +1673,7 @@ class SurveyorController extends Controller $permohonan = $this->getPermohonanJaminanId($id, $dokumentId, $jaminanId); + $surveyor = $id; $branches = Branch::all(); $provinces = Province::all(); @@ -2342,7 +2309,8 @@ class SurveyorController extends Controller 'perkerasanJalan' => PerkerasanJalan::all(), 'terletakDiArea' => TerletakArea::all(), 'tujuanPenilaian' => TujuanPenilaian::all(), - 'perizinan' => Perizinan::all() + 'perizinan' => Perizinan::all(), + 'foto' => FotoObjekJaminan::all() ]; } diff --git a/resources/views/penilai/components/analisa/apartement-kantor.blade.php b/resources/views/penilai/components/analisa/apartement-kantor.blade.php new file mode 100644 index 0000000..77b57c5 --- /dev/null +++ b/resources/views/penilai/components/analisa/apartement-kantor.blade.php @@ -0,0 +1,82 @@ + + + + +
+ ANALISA UNIT +
+ + + + @php + $cekLuas = isset($forminspeksi['luas_unit']['tidak sesuai']) + ? 'tidak sesuai' + : 'sesuai'; + + $luas = $forminspeksi['luas_unit'][$cekLuas] ?? null; + @endphp + + + + + + + + + + + + + + + + + + + + + + + + +
Luas Unit:{{ $luas ?? '' }}
Bentuk Unit: + @php + $bentukUnit = $forminspeksi['bentuk_unit'] ?? []; + @endphp + + @if (!empty($bentukUnit)) + {{ implode(', ', $bentukUnit) }} + @else + - + @endif +
Kondisi Unit: + @php + $bentukUnit = $forminspeksi['kondisi_unit'] ?? []; + @endphp + + @if (!empty($bentukUnit)) + {{ implode(', ', $bentukUnit) }} + @else + - + @endif +
Posisi Unit: + @php + $bentukUnit = $forminspeksi['posisi_unit'] ?? []; + @endphp + + @if (!empty($bentukUnit)) + {{ implode(', ', $bentukUnit) }} + @else + - + @endif +
View Unit: + @php + $bentukUnit = $forminspeksi['view'] ?? []; + @endphp + + @if (!empty($bentukUnit)) + {{ implode(', ', $bentukUnit) }} + @else + - + @endif +
diff --git a/resources/views/penilai/components/analisa/bangunan.blade.php b/resources/views/penilai/components/analisa/bangunan.blade.php new file mode 100644 index 0000000..b78af1c --- /dev/null +++ b/resources/views/penilai/components/analisa/bangunan.blade.php @@ -0,0 +1,145 @@ + + + + +
+ ANALISA BANGUNAN +
+ + + + + + + + + + + + + + + + + + + + + + + + + @if (isset($forminspeksi['bangunan']['spesifikasi_bangunan']) && count($forminspeksi['bangunan']['spesifikasi_bangunan']) > 0) + @foreach ($forminspeksi['bangunan']['spesifikasi_bangunan'] as $bangunanIndex => $bangunan) + @if (count($forminspeksi['bangunan']['spesifikasi_bangunan']) > 1) + + + + @else + + + + @endif + + @if (isset($basicData['spekKategoriBangunan'])) + @foreach ($basicData['spekKategoriBangunan'] as $index => $spesifikasi) + @if (!empty($spesifikasi->name)) + + + + + + @endif + @endforeach + @endif + @endforeach +@endif + + + +
Luas Bangunan: + @php + $luasTanahBangunan = + $forminspeksi['bangunan']['luas_tanah_bagunan']; + + $output = !empty($luasTanahBangunan['sesuai']) + ? $luasTanahBangunan['sesuai'] + : (!empty($luasTanahBangunan['tidak sesuai']) + ? $luasTanahBangunan['tidak sesuai'] + : '-'); + @endphp + + {{ $output }} m2 +
Jenis Bangunan: + @php + $jenisBangunan = + $forminspeksi['bangunan']['jenis_bangunan'] ?? []; + @endphp + + @if (!empty($jenisBangunan)) + {{ implode(', ', $jenisBangunan) }} + @else + - + @endif +
Kondisi Bangunan: + @php + $kondisiBangunan = + $forminspeksi['bangunan']['kondisi_bangunan'] ?? []; + @endphp + + @if (!empty($kondisiBangunan)) + {{ implode(', ', $kondisiBangunan) }} + @else + - + @endif +
Sifat Bangunan: + @php + $sifatBangunan = + $forminspeksi['bangunan']['sifat_bangunan'][0] ?? '-'; + $sifatBangunanInput = + $forminspeksi['bangunan']['sifat_bangunan_input']; + + // Filter input yang tidak null + $inputTambahan = array_filter($sifatBangunanInput, function ( + $value, + ) { + return $value !== null && $value !== ''; + }); + + // Gabungkan sifat bangunan dengan input tambahan + $output = $sifatBangunan; + + if (!empty($inputTambahan)) { + $output .= ' (' . implode(', ', $inputTambahan) . ')'; + } + @endphp + + {{ $output }} +
Spesifikasi Bangunan {{ $bangunanIndex + 1 }}
Spesifikasi Bangunan
{{ $spesifikasi->name }}: + @php + $selectedValue = null; + $lainnyaValue = null; + + if (isset($bangunan['spek_kategori_bangunan'][$spesifikasi->name])) { + $selectedValues = $bangunan['spek_kategori_bangunan'][$spesifikasi->name]; + + // Ambil nilai pertama (bukan key) dari array + $selectedValue = array_values(array_filter($selectedValues, function ($key) { + return $key !== 'lainnya'; // Filter key lainnya + }, ARRAY_FILTER_USE_KEY))[0] ?? null; + + $lainnyaValue = $selectedValues['lainnya'] ?? null; + } + @endphp + + @if ($selectedValue) + + {{ $selectedValue }} + @if ($selectedValue === 'Lainnya' && $lainnyaValue) + : {{ $lainnyaValue }} + @endif + + @else + + @endif +
diff --git a/resources/views/penilai/components/analisa/fakta.blade.php b/resources/views/penilai/components/analisa/fakta.blade.php new file mode 100644 index 0000000..c5fc218 --- /dev/null +++ b/resources/views/penilai/components/analisa/fakta.blade.php @@ -0,0 +1,104 @@ + + + + +
+ ANALISA FAKTA +
+ + + + + + + + + + {{-- Faktor Negatif --}} + + + + + + + @if (!empty($forminspeksi['fakta']['rute_menuju'])) + + + + + + @endif + + @if (!empty($forminspeksi['fakta']['batas_batas_input'])) + + + + + + @endif + + @if (!empty($forminspeksi['fakta']['kondisi_lingkungan'])) + + + + + + @endif + @if (!empty($forminspeksi['fakta']['informasi_dokument'])) + + + + + + @endif + + +
Faktor Positif: + @isset($forminspeksi['fakta']['fakta_positif']) + + @foreach ($forminspeksi['fakta']['fakta_positif'] as $key => $item) + + + + @endforeach +
{!! nl2br(e($item)) !!}
+ @endisset +
Faktor Negatif: + @php + $faktaNegatif = $forminspeksi['fakta']['fakta_negatif'] ?? []; + $faktaNegatifFiltered = is_array($faktaNegatif) + ? array_filter($faktaNegatif, function ($item) { + return !empty(trim($item)); + }) + : []; + @endphp + + @if (!empty($faktaNegatifFiltered)) + + @foreach ($faktaNegatifFiltered as $key => $item) + + + + @endforeach +
{!! nl2br(e($item)) !!}
+ @else +

Tidak ada faktor negatif yang teridentifikasi.

+ @endif +
Rute Menuju: + {!! nl2br(e($forminspeksi['fakta']['rute_menuju'] ?? '')) !!} +
Batas batas: + @foreach ($forminspeksi['fakta']['batas_batas_input'] ?? [] as $arah => $batas) + @if ($batas) +

- {{ $arah }} : {{ $batas }}

+ @endif + @endforeach +
Kondisi Lingkungan: + @foreach ($forminspeksi['fakta']['kondisi_lingkungan'] ?? [] as $kondisi) + {!! nl2br(e($kondisi)) !!} + @endforeach +
Informasi Lain terkait + Dokumen: + @foreach ($forminspeksi['fakta']['informasi_dokument'] ?? [] as $informasi) + {!! nl2br(e($informasi)) !!} + @endforeach +
diff --git a/resources/views/penilai/components/analisa/informasi.blade.php b/resources/views/penilai/components/analisa/informasi.blade.php new file mode 100644 index 0000000..28501fc --- /dev/null +++ b/resources/views/penilai/components/analisa/informasi.blade.php @@ -0,0 +1,55 @@ + + + + + + + + @if (!empty($forminspeksi['fakta']['keterangan'])) + + + + + + @endif +
Informasi Dinas Tata Ruang + : + @php + $informasi = [ + 'peruntukan', + 'kdb', + 'kdh', + 'gsb', + 'max_lantai', + 'klb', + 'gss', + 'pelebaran_jalan', + 'nama_petugas', + ]; + @endphp + + @foreach ($informasi as $key) + @if (isset($forminspeksi['fakta'][$key]) && $forminspeksi['fakta'][$key] !== '-') +

- {{ ucfirst(str_replace('_', ' ', $key)) }}: + {{ $forminspeksi['fakta'][$key] }}

+ @endif + @endforeach + +
Catatan yang Perlu + Diperhatikan: + @php + $keterangan = $forminspeksi['fakta']['keterangan'] ?? ''; + if (is_array($keterangan)) { + $keterangan = implode(', ', array_filter($keterangan)); + } + @endphp + + @if (!empty($keterangan)) + + + + + +
{!! nl2br(e($keterangan)) !!}
+ @endif +
diff --git a/resources/views/penilai/components/analisa/lingkungan.blade.php b/resources/views/penilai/components/analisa/lingkungan.blade.php new file mode 100644 index 0000000..f68cd54 --- /dev/null +++ b/resources/views/penilai/components/analisa/lingkungan.blade.php @@ -0,0 +1,129 @@ + + + + +
+ ANALISA LINGKUNGAN +
+ + + @php + $lingkungan = $forminspeksi['lingkungan']; + $fasilitas = $lingkungan['fasilitas_dekat_object'] ?? []; + $fasilitasInput = $lingkungan['fasilitas_dekat_object_input'] ?? []; + @endphp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @if ($lingkungan['dekat_makam'] == 'ya') + + + + + + @endif + + @if ($lingkungan['dekat_tps'] == 'ya') + + + + + + @endif + + + + + + + + @if (!empty($fasilitas)) + + + + + + @endif +
Jarak Jalan Utama:{{ $lingkungan['jarak_jalan_utama'] ?? '-' }} m
Jalan Lingkungan:{{ $lingkungan['jalan_linkungan'] ?? '-' }} m
Jarak CBD:{{ $lingkungan['jarak_cbd_point'] ?? '-' }} m + ({{ $lingkungan['nama_cbd_point'] ?? '-' }})
Lebar Perkerasan Jalan:{{ $lingkungan['lebar_perkerasan_jalan'] ?? '-' }} m
Perkerasan Jalan: + + {{ implode(', ', $lingkungan['perkerasan_jalan']['perkerasan_jalan'] ?? ['-']) }} +
Lalu Lintas:{{ implode(', ', $lingkungan['lalu_lintas'] ?? ['-']) }} +
Golongan Masyarakat Sekitar:{{ implode(', ', $lingkungan['gol_mas_sekitar'] ?? ['-']) }} +
Tingkat Keramaian: + {{ implode(', ', $lingkungan['tingkat_keramaian'] ?? ['-']) }} +
Terletak di Area: + {{ implode(', ', $lingkungan['terletak_diarea']['terletak_diarea'] ?? ['-']) }} +
Kondisi Bangunan Sekitar:{{ $lingkungan['kondisi_bagunan_disekitar_lokasi'] ?? '-' }} +
Sifat Bangunan Sekitar:{{ $lingkungan['sifat_bagunan_disekitar_lokasi'] ?? '-' }} +
Dekat Makam:Ya, Jarak {{ $lingkungan['jarak_makam'] ?? '-' }} m + ({{ $lingkungan['nama_makam'] ?? '-' }}) +
Dekat TPS:Ya, Jarak {{ $lingkungan['jarak_tps'] ?? '-' }} m + ({{ $lingkungan['nama_tps'] ?? '-' }})
Daerah: + {{ implode(', ', $lingkungan['merupakan_daerah'] ?? ['-']) }} +
Fasilitas Dekat Objek: + @foreach ($fasilitas as $fas) + {{ $fas }} + @if (isset($fasilitasInput[$fas])) + ({{ $fasilitasInput[$fas] }}) + @endif + @if (!$loop->last) + , + @endif + @endforeach +
diff --git a/resources/views/penilai/components/analisa/tanah.blade.php b/resources/views/penilai/components/analisa/tanah.blade.php new file mode 100644 index 0000000..980a755 --- /dev/null +++ b/resources/views/penilai/components/analisa/tanah.blade.php @@ -0,0 +1,148 @@ + + + + +
+ ANALISA TANAH +
+ + + + @php + $cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) ? 'tidak sesuai' : 'sesuai'; + + $luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null; + @endphp + + + + + + @php + $cekMataAngin = isset($forminspeksi['tanah']['hadap_mata_angin']['tidak sesuai']) + ? 'tidak sesuai' + : 'sesuai'; + + $Arah = $forminspeksi['tanah']['hadap_mata_angin'][$cekMataAngin] ?? null; + @endphp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Luas Tanah:{{ $luas ?? '' }}
Hadap Mata Angin:{{ $Arah ?? '' }}
Bentuk Tanah: + @php + $bentukTanah = isset($forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah']) + ? $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah'] + : []; + $lainnya = isset($forminspeksi['tanah']['bentuk_tanah']['lainnya']) + ? $forminspeksi['tanah']['bentuk_tanah']['lainnya'] + : null; + @endphp + + {{ !empty($bentukTanah) ? implode(', ', $bentukTanah) : 'Data tidak tersedia' }} + + @if (in_array('Lainnya', $bentukTanah) && $lainnya) + ({{ $lainnya }}) + @endif +
Kontur Tanah: + @php + $konturTanah = $forminspeksi['tanah']['kontur_tanah'] ?? []; + @endphp + + @if (!empty($konturTanah)) + {{ implode(', ', $konturTanah) }} + @else + - + @endif +
Beda Ketinggian dengan Jalan: + @php + $ketinggianTanah = $forminspeksi['tanah']['ketinggian_tanah']; + $ketinggian = $ketinggianTanah['ketinggian'][0] ?? '-'; + $lebihTinggi = $ketinggianTanah['lebih_tinggi']; + $lebihRendah = $ketinggianTanah['lebih_rendah']; + @endphp + + {{ $ketinggian }} + @if ($ketinggian === 'Lebih Tinggi' && $lebihTinggi !== null) + (Ketinggian: {{ $lebihTinggi }} cm) + @elseif($ketinggian === 'Lebih Rendah' && $lebihRendah !== null) + (Kerendahan: {{ $lebihRendah }} cm) + @endif +
Kontur Jalan Depan Objek: + {{ $forminspeksi['tanah']['kontur_jalan'] == 'menurun' ? 'Menurun' : 'Rata' }} +
Posisi Kavling: + @php + $posisiKavling = isset($forminspeksi['tanah']['posisi_kavling']['posisi_kavling']) + ? $forminspeksi['tanah']['posisi_kavling']['posisi_kavling'] + : []; + $lainnya = isset($forminspeksi['tanah']['posisi_kavling']['lainnya']) + ? $forminspeksi['tanah']['posisi_kavling']['lainnya'] + : null; + @endphp + + {{ !empty($posisiKavling) ? implode(', ', $posisiKavling) : '' }} + + @if (in_array('Lainnya', $posisiKavling) && $lainnya) + ({{ $lainnya }}) + @endif +
Tusuk Sate: + {{ $forminspeksi['tanah']['tusuk_sate'] == 'yes' ? 'Ya' : 'Tidak' }} +
Lockland: + {{ $forminspeksi['tanah']['lockland'] == 'yes' ? 'Ya' : 'Tidak' }} +
Kondisi Fisik Tanah: + @php + $kondisiFisikTanah = $forminspeksi['tanah']['kondisi_fisik_tanah']['kondisi_fisik_tanah'][0] ?? '-'; + $lainnya = $forminspeksi['tanah']['kondisi_fisik_tanah']['lainnya']; + @endphp + + {{ $kondisiFisikTanah }} + @if ($kondisiFisikTanah === 'Lainnya' && $lainnya) + ({{ $lainnya }}) + @endif +
diff --git a/resources/views/penilai/components/footer.blade.php b/resources/views/penilai/components/footer.blade.php new file mode 100644 index 0000000..84e9a94 --- /dev/null +++ b/resources/views/penilai/components/footer.blade.php @@ -0,0 +1,34 @@ + + + + diff --git a/resources/views/penilai/components/foto-jaminan.blade.php b/resources/views/penilai/components/foto-jaminan.blade.php index dd9e8a6..65ba464 100644 --- a/resources/views/penilai/components/foto-jaminan.blade.php +++ b/resources/views/penilai/components/foto-jaminan.blade.php @@ -1,45 +1,6 @@ -
- @php - $photoSections = [ - 'rute_menuju_lokasi' => [ - 'key' => 'rute_menuju_lokasi', - 'name_prefix' => '', - 'nested' => true, - ], - 'foto_rute_lainnya' => [ - 'key' => 'name_rute_lainnya', - 'name_prefix' => '', - 'nested' => true, - ], - 'foto_lingkungan' => [ - 'key' => 'foto_lingkungan', - 'name_prefix' => '', - 'nested' => true, - ], - 'single_photos' => [ - 'foto_basement' => 'Basement', - 'foto_gerbang' => 'Gerbang', - 'pendamping' => 'Pendamping', - ], - 'object_jaminan' => [ - 'key' => 'name_objek', - 'name_prefix' => '', - 'nested' => false, - ], - 'foto_lantai_unit' => [ - 'key' => 'name', - 'name_prefix' => 'Foto Lantai', - 'nested' => true, - ], - ]; - - $hasPhotos = false; - @endphp - - @foreach ($photoSections as $sectionKey => $sectionConfig) - @if ($sectionKey === 'single_photos') + +@isset($basicData['foto']) + @php + $photos = $formFoto['upload_foto'] ?? []; + if (!is_array($photos)) { + $photos = []; + } + $groupedPhotos = collect($photos)->groupBy('category'); + + $mainPhotos = $groupedPhotos->filter(fn($_, $key) => $key !== 'lainnya'); + $otherPhotos = $groupedPhotos->get('lainnya', collect()); + @endphp + + @if ($groupedPhotos->isEmpty()) +

Tidak ada foto yang tersedia.

+ @else + @foreach ($mainPhotos as $category => $photos)
- @php $counter = 0; @endphp - @foreach ($sectionConfig as $photoKey => $photoName) - @if (isset($formFoto[$photoKey]) && !empty($formFoto[$photoKey])) - @php - $imagePath = storage_path('app/public/' . $formFoto[$photoKey]); - $hasPhotos = true; - @endphp - @if ($counter % 2 == 0) -
- @endif -
-

- {{ $photoName }} -

- @if ($statusLpj || file_exists($imagePath)) - {{ $photoName }} - @endif +

{{ $category }}

+ @php + $groupedBySubcategory = $photos->groupBy('sub'); + @endphp + + @if ($groupedBySubcategory->isEmpty()) +

Tidak ada subkategori yang tersedia.

+ @else + @foreach ($groupedBySubcategory as $subcategory => $subPhotos) + @isset($subcategory) +
+ {{ $subcategory ?: '' }} +
+ @endisset + +
+ @foreach ($subPhotos as $index => $item) + @php + $imagePath = storage_path('app/public/' . $item['path']); + @endphp +
+

{{ $item['name'] }}

+ @if ($statusLpj || file_exists($imagePath)) + {{ $item['path'] }} + @else +

Foto tidak ditemukan.

+ @endif + @isset($item['description']) +

{{ $item['description'] }}

+ @endisset +
+ + @if (($index + 1) % 2 == 0 && !$loop->last)
- @if ($counter % 2 == 1 || $loop->last) -
- @endif - @php $counter++; @endphp +
@endif @endforeach
- @else - @php - $sectionData = $formFoto[$sectionKey] ?? null; - @endphp - - @if (!empty($sectionData)) - @if ($sectionConfig['nested']) - @if (isset($sectionData[$sectionConfig['key']][0])) -
- @php $counter = 0; @endphp - @foreach ($sectionData[$sectionConfig['key']][0] as $index => $item) - @php - $imagePath = storage_path('app/public/' . $item['path']); - $hasPhotos = true; - @endphp - @if ($counter % 2 == 0) -
- @endif -
-

- {{ $sectionConfig['name_prefix'] - ? $sectionConfig['name_prefix'] . ' ' . ($index + 1) - : $item['name'] ?? 'Foto ' . ($index + 1) }} -

- @if ($statusLpj || file_exists($imagePath)) - {{ $item['path'] }} - @endif -
- @if ($counter % 2 == 1 || $loop->last) -
- @endif - @php $counter++; @endphp - @endforeach -
- @endif - @else -
- @php $counter = 0; @endphp - @foreach ($sectionData as $index => $item) - @php - $name = $item[$sectionConfig['key']] ?? ''; - $photoPath = - $sectionKey === 'object_jaminan' - ? $item['foto_objek'] ?? '' - : $item['foto_rute_lainnya'] ?? ''; - - $imagePath = storage_path('app/public/' . $photoPath); - @endphp - - @if (!empty($name) || !empty($photoPath)) - @php $hasPhotos = true; @endphp - @if ($counter % 2 == 0) -
- @endif -
- @if (!empty($name)) -

- {{ $name }} -

- @endif - @if ($statusLpj || (file_exists($imagePath) && !empty($photoPath))) - {{ $name ?: 'Foto' }} - @endif -
- @if ($counter % 2 == 1 || $loop->last) -
- @endif - @php $counter++; @endphp - @endif - @endforeach -
- @endif - @endif - @endif + @endforeach + @endif +
@endforeach - @if (!$hasPhotos) -
-

Tidak ada foto yang tersedia

+ @if (!$otherPhotos->isEmpty()) +
+

Lainnya

+ + @php + $groupedBySubcategory = $otherPhotos->groupBy('sub'); + @endphp + + @if ($groupedBySubcategory->isEmpty()) +

Tidak ada subkategori yang tersedia.

+ @else + @foreach ($groupedBySubcategory as $subcategory => $subPhotos) + @isset($subcategory) +
+ {{ $subcategory ?: '' }} +
+ @endisset + +
+ @foreach ($subPhotos as $index => $item) + @php + $imagePath = storage_path('app/public/' . $item['path']); + @endphp +
+
{{ $item['name'] }}
+ @if ($statusLpj || file_exists($imagePath)) + {{ $item['path'] }} + @else +

Foto tidak ditemukan.

+ @endif +
+ + @if (($index + 1) % 2 == 0 && !$loop->last) +
+
+ @endif + @endforeach
+ @endforeach @endif -
+
+ @endif + @endif +@endisset diff --git a/resources/views/penilai/components/foto-lampiran.blade.php b/resources/views/penilai/components/foto-lampiran.blade.php index 039f613..f21b449 100644 --- a/resources/views/penilai/components/foto-lampiran.blade.php +++ b/resources/views/penilai/components/foto-lampiran.blade.php @@ -1,264 +1,89 @@ -@if (isset($formFoto['rute_menuju_lokasi']['rute_menuju_lokasi'])) -
-
-

- Rute Menuju Lokasi -

-
-
- @if (isset($formFoto['rute_menuju_lokasi']['rute_menuju_lokasi'])) - @foreach ($formFoto['rute_menuju_lokasi']['rute_menuju_lokasi'][0] as $index => $item) -
-
-

- {{ $item['name'] ?? 'Rute menuju lokasi - ' . ($index + 1) }} -

-
- Gambar {{ $index + 1 }} -
-
-
- @endforeach - @endif -
-
-@endif +@isset($basicData['foto']) + @php + $photos = $formFoto['upload_foto'] ?? []; + if (!is_array($photos)) { + $photos = []; + } + $groupedPhotos = collect($photos)->groupBy('category'); + @endphp -@if (isset($formFoto['foto_rute_lainnya'])) -
-
-

- Rute Lainnya -

-
-
- @if (isset($formFoto['foto_rute_lainnya'])) - @foreach ($formFoto['foto_rute_lainnya'] as $index => $item) -
-
-

- {{ $item['name_rute_lainnya'] ?? 'Rute Lainnya - ' . ($index + 1) }} -

-
- Gambar {{ $index + 1 }} -
-
-
- @endforeach - @endif -
-
-@endif - -@if (isset($formFoto['foto_gerbang'])) -
-
-

- Gerbang -

-
-
- - -
+ @if ($groupedPhotos->isEmpty()) +

Tidak ada foto yang tersedia.

+ @else + @foreach ($groupedPhotos as $category => $photos) +
+

{{ $category ?? 'Tanpa Kategori' }}

-

- Gerbang -

-
+ @php + $groupedBySubcategory = $photos->groupBy('sub'); + @endphp + @if ($groupedBySubcategory->isEmpty()) - - -
-
-
- -
-
-@endif - -@if (isset($formFoto['foto_lingkungan']['foto_lingkungan'])) -
-
-

- Lingkungan

-
-
- @if (isset($formFoto['foto_lingkungan']['foto_lingkungan'])) - @foreach ($formFoto['foto_lingkungan']['foto_lingkungan'][0] as $index => $item) -
-
-

- {{ $item['name'] ?? 'Lingkungan - ' . ($index + 1) }} -

-
- Gambar {{ $index + 1 }} -
-
-
- @endforeach - @endif -
-
-@endif - -@if (isset($formFoto['object_jaminan'])) -
-
-

- Object Jaminan -

-
-
- @if (isset($formFoto['object_jaminan'])) - @foreach ($formFoto['object_jaminan'] as $item) -
-
-

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

-
- -
-
-
- @endforeach - @endif -
-
-@endif - -@if (isset($formFoto['foto_lantai_unit'])) -
-
-

Lantai

-
-
- @if (isset($formFoto['foto_lantai_unit'])) - @foreach ($formFoto['foto_lantai_unit'] as $floorIndex => $floorPhotos) -
- @foreach ($floorPhotos as $index => $item) - @if (is_int($index) && isset($item['name'], $item['path']) && is_string($item['path'])) -
-
-

- {{ $item['name'] ?? 'Foto Lantai ' . ($floorIndex + 1) . ' - ' . ($index + 1) }} -

-
- Gambar {{ $floorIndex + 1 }}-{{ $index + 1 }} + @foreach ($photos as $index => $item) +
+
+

+ {{ $item['name'] ?? 'Foto - ' . ($index + 1) }} +

+
+ @if (isset($item['path'])) + Gambar {{ $index + 1 }} + @else +

Gambar tidak tersedia

+ @endif +
+

{{ $item['description'] ?? '-' }}

-
- @endif - @endforeach -
- @endforeach - - @endif -
-
-@endif - - - -@if (isset($formFoto['foto_basement'])) -
-
-

- Basement -

-
-
-
-
-

- Basemnt -

-
- - - - -
+ @endforeach + @else + + @foreach ($groupedBySubcategory as $subcategory => $subPhotos) +
+ +

+ @if ($subcategory) + {{ $subcategory }} + @endif +

+
+ @foreach ($subPhotos as $index => $item) +
+
+

+ {{ $item['name'] ?? 'Foto - ' . ($index + 1) }} +

+
+ @if (isset($item['path'])) + Gambar {{ $index + 1 }} + @else +

Gambar tidak tersedia

+ @endif +
+

{{ $item['description'] ?? '-' }}

+
+
+ @endforeach +
+
+ @endforeach + @endif
- -
-
-@endif - -@if (isset($formFoto['foto_lantai_lainnya'])) -
-
-

- Lantai Lainnya -

-
-
- @if (isset($formFoto['foto_lantai_lainnya'])) - @foreach ($formFoto['foto_lantai_lainnya'] as $index => $item) -
-
-

- {{ $item['name_lantai_lainnya'] ?? 'Lantai - ' . ($index + 1) }} -

-
- Gambar {{ $index + 1 }} -
-
-
- @endforeach - @endif -
-
-@endif - - - - -@if (isset($formFoto['pendamping'])) -
-
-

- Pendamping -

-
-
- - -
-
-

- Pendamping -

-
- - - - -
-
-
- -
-
-@endif + @endforeach + @endif +@endisset @php -$fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; -if (($key = array_search('foto_tempat', $fotoTypes)) !== false) { - unset($fotoTypes[$key]); - array_unshift($fotoTypes, 'foto_tempat'); -} -$adaFoto = false; + $fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; + if (($key = array_search('foto_tempat', $fotoTypes)) !== false) { + unset($fotoTypes[$key]); + array_unshift($fotoTypes, 'foto_tempat'); + } + $adaFoto = false; if (isset($forminspeksi)) { foreach ($fotoTypes as $type) { $imagePath = $forminspeksi[$type] ?? null; @@ -271,33 +96,33 @@ $adaFoto = false; @endphp @if ($adaFoto) -
-
-

- Peta -

-
-
+
+
+

+ Peta +

+
+
-
- @if (isset($forminspeksi)) - @forelse ($fotoTypes as $type) -
- @php - $imagePath = $forminspeksi[$type] ?? null; - @endphp +
+ @if (isset($forminspeksi)) + @forelse ($fotoTypes as $type) +
+ @php + $imagePath = $forminspeksi[$type] ?? null; + @endphp - @if ($imagePath && file_exists(storage_path('app/public/' . $imagePath))) - {{ $type }} - @endif -

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

-
- @empty -

Tidak ada tipe foto yang tersedia

- @endforelse - @endif + @if ($imagePath && file_exists(storage_path('app/public/' . $imagePath))) + {{ $type }} + @endif +

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

+
+ @empty +

Tidak ada tipe foto yang tersedia

+ @endforelse + @endif +
-
@endif diff --git a/resources/views/penilai/components/header.blade.php b/resources/views/penilai/components/header.blade.php new file mode 100644 index 0000000..62a8c0c --- /dev/null +++ b/resources/views/penilai/components/header.blade.php @@ -0,0 +1,112 @@ + + + + + + + + + Laporan Penilai Jaminan + + + + + + + diff --git a/resources/views/penilai/components/print-memo.blade.php b/resources/views/penilai/components/print-memo.blade.php index b7e7e26..f480a37 100644 --- a/resources/views/penilai/components/print-memo.blade.php +++ b/resources/views/penilai/components/print-memo.blade.php @@ -1,216 +1,102 @@ - - +@include('lpj::penilai.components.header') +@php + $data = ''; + foreach ($permohonan->documents as $dokumen) { + $data .= $dokumen->jenisJaminan->name . ', '; - - - - - - Laporan Penilai Jaminan + $penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first(); + $surveyor = $permohonan->penilaian->userPenilai->where('role', 'surveyor')->first(); + $teams = $permohonan->region->teams; - - - - - - @php - $data = ''; - foreach ($permohonan->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; - } + if ($user && $user->hasRole('senior-officer')) { + $senior_officer = $user; + break 3; } } } } } - $data = rtrim($data, ', '); - @endphp - + } + $data = rtrim($data, ', '); +@endphp -
- - - - -
-

- MEMO ANTAR KANTOR

-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
Kepada:{{ $memo['kepada'] ?? '' }}
Dari:{{ $memo['dari'] ?? '' }}
No memo:{{ $nomorLaporan ?? '-' }}
Tanggal:{{ formatTanggalIndonesia($memo['tanggal']) }}
Perihal:{{ $memo['perihal'] ?? '' }}
- - - - -
- Menindak lanjuti permintann penilaian jaminan dari {{ $permohonan->user->name }} AO Cabang - {{ $permohonan->debiture->branch->name ?? '' }} - tanggal {{ formatTanggalIndonesia($memo['tanggal']) ?? '' }}, dapat di sampaikan sebagai berikut: -
+
+ + + + +
+

+ MEMO ANTAR KANTOR

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Kepada:{{ $memo['kepada'] ?? '' }}
Dari:{{ $memo['dari'] ?? '' }}
No memo:{{ $nomorLaporan ?? '-' }}
Tanggal:{{ formatTanggalIndonesia($memo['tanggal']) }}
Perihal:{{ $memo['perihal'] ?? '' }}
- - - - -
-
Data Debitur dan Jaminan
-
- +
+ + + +
+ Menindak lanjuti permintann penilaian jaminan dari {{ $permohonan->user->name }} AO Cabang + {{ $permohonan->debiture->branch->name ?? '' }} + tanggal {{ formatTanggalIndonesia($memo['tanggal']) ?? '' }}, dapat di sampaikan sebagai berikut: +
- - Nama Calon Debitur - : - {{ $permohonan->debiture->name ?? '' }} - - - Jenis Aset - : - {{ $data ?? '' }} - + + + + +
+
Data Debitur dan Jaminan
+
+ - @if (@isset($dokumen)) + + + + + + + + + + + + @if (@isset($dokumen)) @foreach ($dokumen->detail as $detail) @if (isset($detail->dokumen_jaminan)) @@ -246,17 +132,17 @@ @if (isset($detail->details)) @if (json_decode($detail->details)) @foreach (json_decode($detail->details) as $key => $value) - @if (!is_null($value) && $value !== '') - - - - - - @endif + @if (!is_null($value) && $value !== '') + + + + + + @endif @endforeach @endif @endif @@ -264,13 +150,13 @@ @endif - - - - - + + + + + - @if (!empty($memo['lokasi']['address'])) + @if (!empty($memo['lokasi']['address'])) @@ -278,147 +164,136 @@ {{ $alamat['village_code'] ?? '' }} {{ $alamat['district_code'] ?? '' }}, {{ $alamat['city_code'] ?? '' }}, {{ $alamat['province_code'] ?? '' }} - @endif -
Nama Calon Debitur:{{ $permohonan->debiture->name ?? '' }}
Jenis Aset:{{ $data ?? '' }}
{{ ucwords(str_replace('_', ' ', $key)) ?? '' }}:{{ $value }} - @if ($key == 'luas_bangunan' || $key == 'luas_tanah') - m2 - @endif -
{{ ucwords(str_replace('_', ' ', $key)) ?? '' }}:{{ $value }} + @if ($key == 'luas_bangunan' || $key == 'luas_tanah') + m2 + @endif +
Atas Nama:{{ $permohonan->debiture->name ?? '' }}
Atas Nama:{{ $permohonan->debiture->name ?? '' }}
Lokasi Jaminan :
+ @endif + - +
+ + + +
+
HASIL Kunjungan
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Tanggal Kunjungan: + {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
Surveyor:{{ $surveyor->userPenilaiTeam->name ?? '' }}
Pihak Pemohon:{{ $permohonan->user->name ?? '' }} - + {{ $permohonan->debiture->branch->name ?? '' }}
Pihak Cadeb/Debitur:{{ $permohonan->debiture->name ?? '' }}
+ + + @isset($memo['hasil_survey']) + @foreach ($memo['hasil_survey'] as $key => $item) - + -
-
HASIL Kunjungan
-
{{ $item }}
+ @endforeach + @endisset + + + + + + + + @isset($memo['kesimpulan_saran']) + @foreach ($memo['kesimpulan_saran'] as $key => $item) + + + + @endforeach + @endisset + +
+
KESIMPULAN DAN SARAN
+
{{ $item }}
- - - - - - - - - - - - - - - - +
Tanggal Kunjungan: - {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
Surveyor:{{ $surveyor->userPenilaiTeam->name ?? '' }}
Pihak Pemohon:{{ $permohonan->user->name ?? '' }} - - {{ $permohonan->debiture->branch->name ?? '' }}
+ + + + +
Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih
- - - - - - -
Pihak Cadeb/Debitur:{{ $permohonan->debiture->name ?? '' }}
- - - @isset($memo['hasil_survey']) - @foreach ($memo['hasil_survey'] as $key => $item) - + + + + - @endforeach - @endisset - -
{{ $item }}
- - - - - - @isset($memo['kesimpulan_saran']) - @foreach ($memo['kesimpulan_saran'] as $key => $item) + @php + use Modules\Usermanagement\Models\User; + @endphp - - - @endforeach - @endisset - -
-
KESIMPULAN DAN SARAN
-
{{ $item }}
+ {{ $penilai->userPenilaiTeam->name ?? '' }}
+ - - - - - -
Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih
- - - - - - - - @php - use Modules\Usermanagement\Models\User; - @endphp - - + + - - + + +
{{ $penilai->userPenilaiTeam->name ?? '' }}
+ {{ ucwords(strtolower('PENILAI')) }} + +
+ @if ($permohonan->approval_so != null) + {{ $senior_officer->name ?? '' }}
+ + {{ ucwords(strtolower('SENIOR OFFICER')) }} + + @endif +
+ @if ($permohonan->approval_eo != null) + {{ User::role('EO Appraisal')->first()->name ?? '' }}
- {{ ucwords(strtolower('PENILAI')) }} + {{ ucwords(strtolower('EXECUTIVE OFFICER')) }} -
- @if ($permohonan->approval_so != null) - {{ $senior_officer->name ?? '' }}
- - {{ ucwords(strtolower('SENIOR OFFICER')) }} - - @endif -
- @if ($permohonan->approval_eo != null) - {{ User::role('EO Appraisal')->first()->name ?? '' }}
- + @endif +
+ @if ($permohonan->approval_dd != null) + {{ User::role('DD Appraisal')->first()->name ?? '' }}
+ + {{ ucwords(strtolower('DEPUTY DIRECTOR')) }} + + @endif +
+ + - {{ ucwords(strtolower('EXECUTIVE OFFICER')) }} -
- @endif - - - @if ($permohonan->approval_dd != null) - {{ User::role('DD Appraisal')->first()->name ?? '' }}
- - {{ ucwords(strtolower('DEPUTY DIRECTOR')) }} - - @endif - - - - - +
-
- -
-
-
- FOTO JAMINAN -
-
- @include('lpj::penilai.components.foto-jaminan') +
+
+
+ FOTO JAMINAN +
+ @include('lpj::penilai.components.foto-jaminan') +
-
- -
- Cabang : {{ $permohonan->debiture->branch->name ?? '' }} -
- - - - - +
+@include('lpj::penilai.components.footer') diff --git a/resources/views/penilai/components/print-out-rap.blade.php b/resources/views/penilai/components/print-out-rap.blade.php index d3edd26..de39cd0 100644 --- a/resources/views/penilai/components/print-out-rap.blade.php +++ b/resources/views/penilai/components/print-out-rap.blade.php @@ -1,673 +1,539 @@ - - +@include('lpj::penilai.components.header') +
+ + + + +
+

Report Analisa Property

+
- - - - - - Laporan Penilai Jaminan + + + + + + + + + + + + + + + + + + + + + + + + + + +
Kepada:{{ $rap['kepada'] ?? '' }}
Dari:{{ $rap['dari'] ?? '' }}
No:{{ $nomorLaporan ?? '-' }}
Tanggal: + {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
Perihal:{{ $rap['perihal'] ?? '' }}
- - - - - - - -
- - - - -
-

Report Analisa Property

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Kepada:{{ $rap['kepada'] ?? '' }}
Dari:{{ $rap['dari'] ?? '' }}
No:{{ $nomorLaporan ?? '-' }}
Tanggal: - {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
Perihal:{{ $rap['perihal'] ?? '' }}
- -
- -

DOKUMEN TERLAMPIR

- - @foreach ($permohonan->documents as $dokumen) - @php - $senior_officer = null; - $penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first(); - $teams = $permohonan->region->teams; - - $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; - } + if ($user && $user->hasRole('senior-officer')) { + $senior_officer = $user; + break 3; } } } } + } - @endphp - @endforeach - @if (@isset($dokumen)) - @foreach ($dokumen->detail as $detail) - - @if (isset($detail->dokumen_jaminan)) - - - + @if (isset($detail->dokumen_jaminan)) + + + - @endif - - - - @if (isset($detail->details)) - @if (json_decode($detail->details)) - @foreach (json_decode($detail->details) as $key => $value) - @if (!is_null($value) && $value !== '') - - - - @endif + @foreach ($dokumen_jaminan as $index => $dokumen) +
+ @if (!empty($dokumen_nomor[$index])) + {{ $dokumen_nomor[$index] }} + @endif +
@endforeach @endif - @endif - - @endforeach - @endif - - @if (isset($forminspeksi['perizinan']) && is_array($forminspeksi['perizinan']) && count($forminspeksi['perizinan']) > 0) - @foreach ($forminspeksi['perizinan'] as $perizinan) - - - - - - @endforeach - @endif - - @if (isset($forminspeksi['brosur_price_list']) && count($forminspeksi['brosur_price_list']) > 0) - @foreach ($forminspeksi['brosur_price_list'] as $perizinan) - - - - - - @endforeach - @endif - -
- {{ $detail->name ?? '' }} - : - @if (isset($detail->dokumen_jaminan)) - @php - $dokumen_jaminan = is_string($detail->dokumen_jaminan) - ? json_decode($detail->dokumen_jaminan, true) - : []; - $dokumen_jaminan = is_array($dokumen_jaminan) - ? $dokumen_jaminan - : [$detail->dokumen_jaminan]; + @endphp + @endforeach + @if (@isset($dokumen)) + @foreach ($dokumen->detail as $detail) +
+ {{ $detail->name ?? '' }} + : + @if (isset($detail->dokumen_jaminan)) + @php + $dokumen_jaminan = is_string($detail->dokumen_jaminan) + ? json_decode($detail->dokumen_jaminan, true) + : []; + $dokumen_jaminan = is_array($dokumen_jaminan) + ? $dokumen_jaminan + : [$detail->dokumen_jaminan]; - $dokumen_nomor = is_string($detail->dokumen_nomor) - ? json_decode($detail->dokumen_nomor, true) - : []; - $dokumen_nomor = is_array($dokumen_nomor) - ? $dokumen_nomor - : [$detail->dokumen_nomor]; - @endphp + $dokumen_nomor = is_string($detail->dokumen_nomor) + ? json_decode($detail->dokumen_nomor, true) + : []; + $dokumen_nomor = is_array($dokumen_nomor) + ? $dokumen_nomor + : [$detail->dokumen_nomor]; + @endphp - @foreach ($dokumen_jaminan as $index => $dokumen) -
- @if (!empty($dokumen_nomor[$index])) - {{ $dokumen_nomor[$index] }} - @endif -
- @endforeach - @endif -
- {{ ucwords(str_replace('_', ' ', $key)) ?? '' }}:{{ $value }} - @if ($key == 'luas_bangunan' || $key == 'luas_tanah') - m2 - @endif -
Perizinan:{{ $perizinan['perizinan'] }}
Brosur & Pricelist:{{ $perizinan['jenis'] }}
- -

DESKRIPSI DEVELOPER

- - - - - - - - - - - - - - @isset($forminspeksi['lainnya_developer']) - @foreach ($forminspeksi['lainnya_developer'] as $item) - - - - - - @endforeach - @endisset -
Pengalaman Developer & Proyek Yang Pernah - Dibuat:{!! nl2br(e($forminspeksi['pengalaman_developer'] ?? 'Data tidak tersedia')) !!}
Apakah Developer Anggota REI:{!! nl2br(e($forminspeksi['developer_anggota'] ?? 'Data tidak tersedia')) !!}
Lainnya: - {!! nl2br(e($item)) !!}
-

KONDISI, LINGKUNGAN DAN PROGRESS PEMBANGUNAN

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @isset($forminspeksi['lainnya_kondisi']) - @foreach ($forminspeksi['lainnya_kondisi'] as $item) - - - - - - @endforeach - @endisset -
Kapan Mulai Dibangun & Target Penyelesaian - :{!! nl2br(e($forminspeksi['kapan_mulai_dibangun'] ?? 'Data tidak tersedia')) !!}
Kondisi Perumahan Saat Ini:{!! nl2br(e($forminspeksi['kondisi_perumahan'] ?? 'Data tidak tersedia')) !!}
Progress Pembangunan:{!! nl2br(e($forminspeksi['progres_pembangunan'] ?? 'Data tidak tersedia')) !!}
Kontraktor (internal/eksternal):{!! nl2br(e($forminspeksi['kontraktor'] ?? 'Data tidak tersedia')) !!}
Lingkungan Sekitar:{!! nl2br(e($forminspeksi['lingkungan_sekitar'] ?? 'Data tidak tersedia')) !!}
Komplek Lain Disekitar Lokasi:{!! nl2br(e($forminspeksi['komplek_disekitar'] ?? 'Data tidak tersedia')) !!}
Pusat Keramaian Dekat Lokasi:{!! nl2br(e($forminspeksi['pusat_keramaian'] ?? 'Data tidak tersedia')) !!}
Transportasi Umum Yang Tersedia:{!! nl2br(e($forminspeksi['transportasi_umum'] ?? 'Data tidak tersedia')) !!}
Lainnya: - {!! nl2br(e($item)) !!} -
- - @isset($forminspeksi['partisi']) -

PARTISI BANGUNAN

- - @if (is_array($forminspeksi['partisi'])) - @foreach ($forminspeksi['partisi'] as $key => $item) - @if (is_array($item)) - - - - - - @endif - @endforeach - @endif -
- {{ $item['nama'] ?? '' }} - : - {{ $item['value'] ?? '' }} -
- @endisset - - @isset($forminspeksi['jumlah_unit']) -

JUMLAH UNIT, BLOK, TYPE DAN LUAS BANGUNAN

- - @foreach ($forminspeksi['jumlah_unit'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['batas_batas_perumahan']) -

BATAS-BATAS PERUMAHAN

- - @foreach ($forminspeksi['batas_batas_perumahan'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['fasus_fasum']) -

FASOS/FASUM

- - @foreach ($forminspeksi['fasus_fasum'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['progres_penjualan']) -

PROGRES PENJUALAN SAAT INI

- - @foreach ($forminspeksi['progres_penjualan'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['harga_unit']) -

HARGA UNIT

- - @foreach ($forminspeksi['harga_unit'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['target_market']) -

TARGET MARKET

- - @foreach ($forminspeksi['target_market'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['kerjasama_dengan_bank']) -

KERJASAMA DENGAN BANK LAIN

- - @foreach ($forminspeksi['kerjasama_dengan_bank'] as $item) - - - - @endforeach -
- {!! nl2br(e($item)) !!} -
- @endisset - @isset($forminspeksi['rute_menuju_lokasi']) -

RUTE MENUJU LOKASI

- - - + @endif -
- {{ $forminspeksi['rute_menuju_lokasi'] ?? '' }} -
- @endisset - @if (isset($forminspeksi['fakta']) && is_array($forminspeksi['fakta'])) -

ATURAN TATA KOTA

- - @php - $informasi = [ - 'peruntukan', - 'kdb', - 'kdh', - 'gsb', - 'max_lantai', - 'klb', - 'gss', - 'pelebaran_jalan', - 'nama_petugas', - ]; - @endphp - - @if (isset($forminspeksi['fakta']) && is_array($forminspeksi['fakta'])) - @foreach ($informasi as $key) - @if (isset($forminspeksi['fakta'][$key]) && $forminspeksi['fakta'][$key] !== '-') -

- {{ ucfirst(str_replace('_', ' ', $key)) }}: - {{ $forminspeksi['fakta'][$key] }}

+ + @if (isset($detail->details)) + @if (json_decode($detail->details)) + @foreach (json_decode($detail->details) as $key => $value) + @if (!is_null($value) && $value !== '') + + + + @endif + @endforeach @endif - @endforeach - @endif -
+ {{ ucwords(str_replace('_', ' ', $key)) ?? '' }}:{{ $value }} + @if ($key == 'luas_bangunan' || $key == 'luas_tanah') + m2 + @endif +
+ @endif + + @endforeach @endif - @isset($forminspeksi['fakta']['keterangan']) + @if (isset($forminspeksi['perizinan']) && is_array($forminspeksi['perizinan']) && count($forminspeksi['perizinan']) > 0) + @foreach ($forminspeksi['perizinan'] as $perizinan) + + Perizinan + : + {{ $perizinan['perizinan'] }} + + @endforeach + @endif + + @if (isset($forminspeksi['brosur_price_list']) && count($forminspeksi['brosur_price_list']) > 0) + @foreach ($forminspeksi['brosur_price_list'] as $perizinan) + + Brosur & Pricelist + : + {{ $perizinan['jenis'] }} + + @endforeach + @endif + + + +

DESKRIPSI DEVELOPER

+ + + + + + + + + + + -

CATATAN LAINNYA

-
Pengalaman Developer & Proyek Yang Pernah + Dibuat:{!! nl2br(e($forminspeksi['pengalaman_developer'] ?? 'Data tidak tersedia')) !!}
Apakah Developer Anggota REI:{!! nl2br(e($forminspeksi['developer_anggota'] ?? 'Data tidak tersedia')) !!}
- @foreach ($forminspeksi['fakta']['keterangan'] ?? [] as $keterangan) - - - - @endforeach -
-

{!! nl2br(e($keterangan)) !!}

-
+ @isset($forminspeksi['lainnya_developer']) + @foreach ($forminspeksi['lainnya_developer'] as $item) + + Lainnya + : + + {!! nl2br(e($item)) !!} + + + @endforeach @endisset -

Demikian kami sampaikan, atas perhatiannya kami ucapkan terima kasih.

+ +

KONDISI, LINGKUNGAN DAN PROGRESS PEMBANGUNAN

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
Kapan Mulai Dibangun & Target Penyelesaian + :{!! nl2br(e($forminspeksi['kapan_mulai_dibangun'] ?? 'Data tidak tersedia')) !!}
Kondisi Perumahan Saat Ini:{!! nl2br(e($forminspeksi['kondisi_perumahan'] ?? 'Data tidak tersedia')) !!}
Progress Pembangunan:{!! nl2br(e($forminspeksi['progres_pembangunan'] ?? 'Data tidak tersedia')) !!}
Kontraktor (internal/eksternal):{!! nl2br(e($forminspeksi['kontraktor'] ?? 'Data tidak tersedia')) !!}
Lingkungan Sekitar:{!! nl2br(e($forminspeksi['lingkungan_sekitar'] ?? 'Data tidak tersedia')) !!}
Komplek Lain Disekitar Lokasi:{!! nl2br(e($forminspeksi['komplek_disekitar'] ?? 'Data tidak tersedia')) !!}
Pusat Keramaian Dekat Lokasi:{!! nl2br(e($forminspeksi['pusat_keramaian'] ?? 'Data tidak tersedia')) !!}
Transportasi Umum Yang Tersedia:{!! nl2br(e($forminspeksi['transportasi_umum'] ?? 'Data tidak tersedia')) !!}
- @php - use Modules\Usermanagement\Models\User; - $penilaiUser = User::where('id', $penilai->userPenilaiTeam->id)->first(); - $imagePathPenilai = storage_path( - 'app/public/signatures/' . $penilaiUser->id . '/' . $penilaiUser->sign, - ); - $soUser = User::where('id', $senior_officer->id)->first(); - $imagePathSo = storage_path('app/public/signatures/' . $soUser->id . '/' . $soUser->sign); + @isset($forminspeksi['lainnya_kondisi']) + @foreach ($forminspeksi['lainnya_kondisi'] as $item) + + + + + + @endforeach + @endisset +
Lainnya: + {!! nl2br(e($item)) !!} +
- $imagePathEO = storage_path( - 'app/public/signatures/' . - User::role('EO Appraisal')->first()->id . - '/' . - User::role('EO Appraisal')->first()->sign, - ); + @isset($forminspeksi['partisi']) +

PARTISI BANGUNAN

+ + @if (is_array($forminspeksi['partisi'])) + @foreach ($forminspeksi['partisi'] as $key => $item) + @if (is_array($item)) + + + + + + @endif + @endforeach + @endif +
+ {{ $item['nama'] ?? '' }} + : + {{ $item['value'] ?? '' }} +
+ @endisset - $imagePathDD = storage_path( - 'app/public/signatures/' . - User::role('DD Appraisal')->first()->id . - '/' . - User::role('DD Appraisal')->first()->sign, - ); - @endphp + @isset($forminspeksi['jumlah_unit']) +

JUMLAH UNIT, BLOK, TYPE DAN LUAS BANGUNAN

+ + @foreach ($forminspeksi['jumlah_unit'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['batas_batas_perumahan']) +

BATAS-BATAS PERUMAHAN

+ + @foreach ($forminspeksi['batas_batas_perumahan'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['fasus_fasum']) +

FASOS/FASUM

+ + @foreach ($forminspeksi['fasus_fasum'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['progres_penjualan']) +

PROGRES PENJUALAN SAAT INI

+ + @foreach ($forminspeksi['progres_penjualan'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['harga_unit']) +

HARGA UNIT

+ + @foreach ($forminspeksi['harga_unit'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['target_market']) +

TARGET MARKET

+ + @foreach ($forminspeksi['target_market'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['kerjasama_dengan_bank']) +

KERJASAMA DENGAN BANK LAIN

+ + @foreach ($forminspeksi['kerjasama_dengan_bank'] as $item) + + + + @endforeach +
+ {!! nl2br(e($item)) !!} +
+ @endisset + @isset($forminspeksi['rute_menuju_lokasi']) +

RUTE MENUJU LOKASI

+ + + + +
+ {{ $forminspeksi['rute_menuju_lokasi'] ?? '' }} +
+ @endisset + @if (isset($forminspeksi['fakta']) && is_array($forminspeksi['fakta'])) +

ATURAN TATA KOTA

+ + @php + $informasi = [ + 'peruntukan', + 'kdb', + 'kdh', + 'gsb', + 'max_lantai', + 'klb', + 'gss', + 'pelebaran_jalan', + 'nama_petugas', + ]; + @endphp + + @if (isset($forminspeksi['fakta']) && is_array($forminspeksi['fakta'])) + @foreach ($informasi as $key) + @if (isset($forminspeksi['fakta'][$key]) && $forminspeksi['fakta'][$key] !== '-') +

- {{ ucfirst(str_replace('_', ' ', $key)) }}: + {{ $forminspeksi['fakta'][$key] }}

+ @endif + @endforeach + @endif +
+ @endif + + @isset($forminspeksi['fakta']['keterangan']) + + +

CATATAN LAINNYA

+ + @foreach ($forminspeksi['fakta']['keterangan'] ?? [] as $keterangan) + + + + @endforeach +
+

{!! nl2br(e($keterangan)) !!}

+
+ @endisset +

Demikian kami sampaikan, atas perhatiannya kami ucapkan terima kasih.

+ + + @php + use Modules\Usermanagement\Models\User; + $penilaiUser = User::where('id', $penilai->userPenilaiTeam->id)->first(); + $imagePathPenilai = storage_path('app/public/signatures/' . $penilaiUser->id . '/' . $penilaiUser->sign); + + $soUser = User::where('id', $senior_officer->id)->first(); + $imagePathSo = storage_path('app/public/signatures/' . $soUser->id . '/' . $soUser->sign); + + $imagePathEO = storage_path( + 'app/public/signatures/' . + User::role('EO Appraisal')->first()->id . + '/' . + User::role('EO Appraisal')->first()->sign, + ); + + $imagePathDD = storage_path( + 'app/public/signatures/' . + User::role('DD Appraisal')->first()->id . + '/' . + User::role('DD Appraisal')->first()->sign, + ); + @endphp + + + @if ($permohonan->approval_so != null) - @if ($permohonan->approval_so != null) - - @endif - @if ($permohonan->approval_eo != null) - - @endif - @if ($permohonan->approval_dd != null) - - @endif - - - - - - @if ($permohonan->approval_so != null) - + @endif + - - @endif - @if ($permohonan->approval_eo != null) - - @endif + + + + @if ($permohonan->approval_so != null) + - @endif - -
+ @if (file_exists($imagePathPenilai)) + {{ $imagePathPenilai }} + @endif + - @if (file_exists($imagePathPenilai)) - {{ $imagePathPenilai }} + @if (file_exists($imagePathSo)) + {{ $imagePathSo }} @endif - @if (file_exists($imagePathSo)) - {{ $imagePathSo }} - @endif - - @if (file_exists($imagePathEO)) - {{ $imagePathEO }} - @endif - - @if (file_exists($imagePathDD)) - {{ $imagePathDD }} - @endif -
{{ $penilai->userPenilaiTeam->name ?? '' }} -
{{ ucwords(strtolower('PENILAI')) }} + @endif + @if ($permohonan->approval_eo != null) +
+ @if (file_exists($imagePathEO)) + {{ $imagePathEO }} + @endif - {{ $senior_officer->name ?? '' }}
- - {{ ucwords(strtolower('SENIOR OFFICER')) }} - + @endif + @if ($permohonan->approval_dd != null) +
+ @if (file_exists($imagePathDD)) + {{ $imagePathDD }} + @endif +
- {{ User::role('EO Appraisal')->first()->name ?? '' }}
- - {{ ucwords(strtolower('EXECUTIVE OFFICER')) }} - -
{{ $penilai->userPenilaiTeam->name ?? '' }} +
{{ ucwords(strtolower('PENILAI')) }} +
+ {{ $senior_officer->name ?? '' }}
+ + {{ ucwords(strtolower('SENIOR OFFICER')) }} + - @if ($permohonan->approval_dd != null) -
- {{ User::role('DD Appraisal')->first()->name ?? '' }}
- - {{ ucwords(strtolower('DEPUTY DIRECTOR')) }} - -
+ + @endif + @if ($permohonan->approval_eo != null) + + {{ User::role('EO Appraisal')->first()->name ?? '' }}
+ + {{ ucwords(strtolower('EXECUTIVE OFFICER')) }} + + + @endif -
-
-
-
- PETA -
-
-
- @php - $fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; - // Memindahkan foto_tempat ke depan jika ada - if (($key = array_search('foto_tempat', $fotoTypes)) !== false) { - unset($fotoTypes[$key]); - array_unshift($fotoTypes, 'foto_tempat'); - } - @endphp + @if ($permohonan->approval_dd != null) + + {{ User::role('DD Appraisal')->first()->name ?? '' }}
+ + {{ ucwords(strtolower('DEPUTY DIRECTOR')) }} + + + @endif + + - @if (isset($forminspeksi)) - @php $counter = 0; @endphp - @foreach ($fotoTypes as $type) - @php - $imagePath = $forminspeksi[$type] ?? null; - @endphp - @if ($imagePath && file_exists(storage_path('app/public/' . $imagePath))) - @if ($counter % 2 == 0) -
- @endif -
- {{ $type }} -

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

-
- @if ($counter % 2 == 1 || $loop->last) -
- @endif - @php $counter++; @endphp +
+
+
+
+ PETA +
+
+
+ @php + $fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; + // Memindahkan foto_tempat ke depan jika ada + if (($key = array_search('foto_tempat', $fotoTypes)) !== false) { + unset($fotoTypes[$key]); + array_unshift($fotoTypes, 'foto_tempat'); + } + @endphp + + @if (isset($forminspeksi)) + @php $counter = 0; @endphp + @foreach ($fotoTypes as $type) + @php + $imagePath = $forminspeksi[$type] ?? null; + @endphp + @if ($imagePath && file_exists(storage_path('app/public/' . $imagePath))) + @if ($counter % 2 == 0) +
@endif - @endforeach - @endif -
+
+ {{ $type }} +

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

+
+ @if ($counter % 2 == 1 || $loop->last)
+ @endif + @php $counter++; @endphp + @endif + @endforeach + @endif +
+
-
+
-
-
-
- FOTO JAMINAN -
-
- @include('lpj::penilai.components.foto-jaminan') +
+
+
+ FOTO JAMINAN +
-
- -
- Cabang : {{ $permohonan->debiture->branch->name ?? '' }} -
- - - - - - + @include('lpj::penilai.components.foto-jaminan') +
+ +@include('lpj::penilai.components.footer') diff --git a/resources/views/penilai/components/print-out-sederhana.blade.php b/resources/views/penilai/components/print-out-sederhana.blade.php index 421b7b4..7de2d7f 100644 --- a/resources/views/penilai/components/print-out-sederhana.blade.php +++ b/resources/views/penilai/components/print-out-sederhana.blade.php @@ -1,122 +1,4 @@ - - - - - - - - - Laporan Penilai Jaminan - - - - - - +@include('lpj::penilai.components.header') @php $data = ''; foreach ($permohonan->documents as $dokumen) { @@ -124,20 +6,6 @@ } $data = rtrim($data, ', '); @endphp -
@@ -145,48 +13,48 @@ - - + + + - - - + + - - - + + - - - + + - - - + + + - - - + + - - - + + - - - + + - - - + + - - + + - @@ -637,9 +505,9 @@ @foreach ($spekKategori as $kategori => $nilaiKategori) @if (!empty($nilaiKategori)) - - - + + @endif @@ -647,7 +515,7 @@ @endforeach @else - @endif @@ -662,14 +530,14 @@ $luas = $forminspeksi['luas_unit'][$cekLuas] ?? null; @endphp - - - + + + - - - + + - - - + + - - - + + - - - + + - - - + + + - - - + + + - - - + + - - - + + + - - + - - - - + + + - - - + + - - - + + - - - + + - - - + + - - - + + + @if ($lingkungan['dekat_makam'] == 'ya') - - - + + @@ -820,25 +688,25 @@ @if ($lingkungan['dekat_tps'] == 'ya') - - - + + @endif - - - + + @if (!empty($fasilitas)) - - - + +
- - - + + + - - + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + - - - + + + @@ -220,29 +88,29 @@ @endphp - - - + + + - - - + + + - - - + + + - - - + + + - - - + +
Nama Debitur:{{ $permohonan->debiture->name ?? '' }}Nama Debitur:{{ $permohonan->debiture->name ?? '' }}
Alamat dan Telpon: + : {{ $permohonan->debiture->address ?? '' }} {{ $permohonan->debiture->phone ?? '' }}
Permintaan Cabang:{{ $permohonan->debiture->branch->name ?? '' }}Permintaan Cabang:{{ $permohonan->debiture->branch->name ?? '' }}
Permintaan (AO):{{ $permohonan->user->name }}Permintaan (AO):{{ $permohonan->user->name }}
No Order:{{ $permohonan->nomor_registrasi ?? '' }}No Order:{{ $permohonan->nomor_registrasi ?? '' }}
Tanggal Order:{{ formatTanggalIndonesia($permohonan->created_at) }}Tanggal Order:{{ formatTanggalIndonesia($permohonan->created_at) }}
Tanggal Survey: + Tanggal Survey: {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
User:{{ $permohonan->user->name ?? '' }}User:{{ $permohonan->user->name ?? '' }}
Pemeriksa:{{ $senior_officer->name ?? '' }}Pemeriksa:{{ $senior_officer->name ?? '' }}
Menyetujui:{{ $senior_officer->name ?? '' }}Menyetujui:{{ $senior_officer->name ?? '' }}
No Laporan:{{ $nomorLaporan ?? '' }}No Laporan:{{ $nomorLaporan ?? '' }}
Tanggal Laporan:{{ formatTanggalIndonesia($tanggalLaporan) ?? '' }}Tanggal Laporan:{{ formatTanggalIndonesia($tanggalLaporan) ?? '' }}
Waktu Penyelesaian: + Waktu Penyelesaian: {{ hitungHariKerja($permohonan->penilaian->tanggal_kunjungan, $tanggalLaporan) }}
@@ -250,56 +118,56 @@
- - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + @if (@isset($dokumen)) @foreach ($dokumen->detail as $detail) @if (isset($detail->dokumen_jaminan)) - - - + - - + - - - + + + @endif - - + + @@ -388,9 +256,9 @@ ? $forminspeksi['asset']['hub_cadeb']['tidak sesuai'] : $forminspeksi['asset']['hub_cadeb']['sesuai']; @endphp - - - + + + @php @@ -405,9 +273,9 @@ ? $forminspeksi['asset']['hub_cadeb_penghuni']['tidak sesuai'] : $forminspeksi['asset']['hub_cadeb_penghuni']['sesuai']; @endphp - - - + + +
Fasilitas Kredit:{{ $permohonan->jenisFasilitasKredit->name ?? '' }}Fasilitas Kredit:{{ $permohonan->jenisFasilitasKredit->name ?? '' }}
Jenis Jaminan:{{ $data ?? '' }}Jenis Jaminan:{{ $data ?? '' }}
Tujuan Penilaian:{{ $permohonan->tujuanPenilaian->name ?? '' }}Tujuan Penilaian:{{ $permohonan->tujuanPenilaian->name ?? '' }}
Terletak di:{{ $alamat['address'] ?? '' }}Terletak di:{{ $alamat['address'] ?? '' }}
Kelurahan:{{ $alamat['village_code'] ?? '' }}Kelurahan:{{ $alamat['village_code'] ?? '' }}
Kecamatan:{{ $alamat['district_code'] ?? '' }}Kecamatan:{{ $alamat['district_code'] ?? '' }}
Kabupaten:{{ $alamat['city_code'] ?? '' }}Kabupaten:{{ $alamat['city_code'] ?? '' }}
Propinsi:{{ $alamat['province_code'] ?? '' }}Propinsi:{{ $alamat['province_code'] ?? '' }}
+ {{ $detail->name ?? '' }} : + : @if (isset($detail->dokumen_jaminan)) @php $dokumen_jaminan = is_array(json_decode($detail->dokumen_jaminan)) @@ -329,10 +197,10 @@ @if (json_decode($detail->details)) @foreach (json_decode($detail->details) as $key => $value) @if (!is_null($value) && $value !== '') - + {{ ucwords(str_replace('_', ' ', $key)) ?? '' }}:{{ $value }} + :{{ $value }} @if ($key == 'luas_bangunan' || $key == 'luas_tanah') m2 @endif @@ -347,14 +215,14 @@ @if (isset($forminspeksi['asset']['nomor_nib']))
Nomor NIB:{{ $forminspeksi['asset']['nomor_nib'] ?? '' }}Nomor NIB:{{ $forminspeksi['asset']['nomor_nib'] ?? '' }}
Atas Nama:Atas Nama: {{ $permohonan->debiture->name ?? '' }}
Hubungan Pemilik Jaminan dengan Debitu:{{ $hubCadeb ?? '' }}Hubungan Pemilik Jaminan dengan Debitu:{{ $hubCadeb ?? '' }}
Hubungan Penghuni Jaminan dengan Debitur:{{ $hubCadeb ?? '' }}Hubungan Penghuni Jaminan dengan Debitur:{{ $hubCadeb ?? '' }}
@@ -444,14 +312,14 @@ $luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null; @endphp -
Luas Tanah:{{ $luas ?? '' }}Luas Tanah:{{ $luas ?? '' }}
Bentuk Tanah: + Bentuk Tanah: @php $bentukTanah = isset( $forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah'], @@ -474,9 +342,9 @@
Kontur Tanah: + Kontur Tanah: @php $konturTanah = $forminspeksi['tanah']['kontur_tanah'] ?? []; @endphp @@ -489,9 +357,9 @@
Permukaan dengan Jalan: + Permukaan dengan Jalan: @php $ketinggianTanah = $forminspeksi['tanah']['ketinggian_tanah']; $ketinggian = $ketinggianTanah['ketinggian'][0] ?? '-'; @@ -509,14 +377,14 @@
Peruntukan Tanah:Perumahan bukan Real EstatePeruntukan Tanah:Perumahan bukan Real Estate
Fisik Tanah: + Fisik Tanah: @php $kondisiFisikTanah = $forminspeksi['tanah']['kondisi_fisik_tanah'][ @@ -534,9 +402,9 @@
Luas Bangunan: + Luas Bangunan: @php $luasTanahBangunan = $forminspeksi['bangunan']['luas_tanah_bagunan']; @@ -553,9 +421,9 @@
Jenis Bangunan: + Jenis Bangunan: @php $jenisBangunan = $forminspeksi['bangunan']['jenis_bangunan'] ?? []; @@ -569,9 +437,9 @@
Kondisi Bangunan: + Kondisi Bangunan: @php $kondisiBangunan = $forminspeksi['bangunan']['kondisi_bangunan'] ?? []; @@ -585,10 +453,10 @@
Sifat Bangunan:Sifat Bangunan: + @php $sifatBangunan = $forminspeksi['bangunan']['sifat_bangunan'][0] ?? '-'; @@ -628,7 +496,7 @@ @if (count($spesifikasiBangunan) > 1)
+ style="padding: 2px; vertical-align: top; font-weight: bold;"> {{ $bangunan['bagunan'] ?? 'Bangunan ' . ($index + 1) }}
{{ $kategori }}: + {{ $kategori }}: {{ implode(', ', $nilaiKategori) }}
Tidak ada data + Tidak ada data spesifikasi bangunan
Luas Unit:{{ $luas ?? '' }}Luas Unit:{{ $luas ?? '' }}
Bentuk Unit: + Bentuk Unit: @php $bentukUnit = $forminspeksi['bentuk_unit'] ?? []; @endphp @@ -682,9 +550,9 @@
Kondisi Unit: + Kondisi Unit: @php $bentukUnit = $forminspeksi['kondisi_unit'] ?? []; @endphp @@ -697,9 +565,9 @@
Posisi Unit: + Posisi Unit: @php $bentukUnit = $forminspeksi['posisi_unit'] ?? []; @endphp @@ -712,9 +580,9 @@
View Unit: + View Unit: @php $bentukUnit = $forminspeksi['view'] ?? []; @endphp @@ -743,76 +611,76 @@ @endphp
Jarak Jalan Utama:{{ $lingkungan['jarak_jalan_utama'] ?? '-' }} mJarak Jalan Utama:{{ $lingkungan['jarak_jalan_utama'] ?? '-' }} m
Jalan Lingkungan:{{ $lingkungan['jalan_linkungan'] ?? '-' }} mJalan Lingkungan:{{ $lingkungan['jalan_linkungan'] ?? '-' }} m
Jarak CBD:{{ $lingkungan['jarak_cbd_point'] ?? '-' }} m + Jarak CBD:{{ $lingkungan['jarak_cbd_point'] ?? '-' }} m ({{ $lingkungan['nama_cbd_point'] ?? '-' }})
Lebar Perkerasan Jalan:{{ $lingkungan['lebar_perkerasan_jalan'] ?? '-' }} mLebar Perkerasan Jalan:{{ $lingkungan['lebar_perkerasan_jalan'] ?? '-' }} m
Perkerasan Jalan: + Perkerasan Jalan: + {{ implode(', ', $lingkungan['perkerasan_jalan']['perkerasan_jalan'] ?? ['-']) }}
Lalu Lintas:{{ implode(', ', $lingkungan['lalu_lintas'] ?? ['-']) }}Lalu Lintas:{{ implode(', ', $lingkungan['lalu_lintas'] ?? ['-']) }}
Golongan Masyarakat Sekitar:{{ implode(', ', $lingkungan['gol_mas_sekitar'] ?? ['-']) }} + Golongan Masyarakat Sekitar:{{ implode(', ', $lingkungan['gol_mas_sekitar'] ?? ['-']) }}
Tingkat Keramaian:{{ implode(', ', $lingkungan['tingkat_keramaian'] ?? ['-']) }} + Tingkat Keramaian:{{ implode(', ', $lingkungan['tingkat_keramaian'] ?? ['-']) }}
Terletak di Area: + Terletak di Area: {{ implode(', ', $lingkungan['terletak_diarea']['terletak_diarea'] ?? ['-']) }}
Kondisi Bangunan Sekitar:{{ $lingkungan['kondisi_bagunan_disekitar_lokasi'] ?? '-' }} + Kondisi Bangunan Sekitar:{{ $lingkungan['kondisi_bagunan_disekitar_lokasi'] ?? '-' }}
Sifat Bangunan Sekitar:{{ $lingkungan['sifat_bagunan_disekitar_lokasi'] ?? '-' }}Sifat Bangunan Sekitar:{{ $lingkungan['sifat_bagunan_disekitar_lokasi'] ?? '-' }}
Dekat Makam:Ya, Jarak {{ $lingkungan['jarak_makam'] ?? '-' }} m + Dekat Makam:Ya, Jarak {{ $lingkungan['jarak_makam'] ?? '-' }} m ({{ $lingkungan['nama_makam'] ?? '-' }})
Dekat TPS:Ya, Jarak {{ $lingkungan['jarak_tps'] ?? '-' }} m + Dekat TPS:Ya, Jarak {{ $lingkungan['jarak_tps'] ?? '-' }} m ({{ $lingkungan['nama_tps'] ?? '-' }})
Daerah:{{ implode(', ', $lingkungan['merupakan_daerah'] ?? ['-']) }} + Daerah:{{ implode(', ', $lingkungan['merupakan_daerah'] ?? ['-']) }}
Fasilitas Dekat Objek: + Fasilitas Dekat Objek: @foreach ($fasilitas as $fas) {{ $fas }} @if (isset($fasilitasInput[$fas])) @@ -1351,16 +1219,4 @@ -
- Cabang : {{ $permohonan->debiture->branch->name ?? '' }} -
- - - - - + @include('lpj::penilai.components.footer') diff --git a/resources/views/penilai/components/print-out-standard.blade.php b/resources/views/penilai/components/print-out-standard.blade.php index 4f25494..cac6b86 100644 --- a/resources/views/penilai/components/print-out-standard.blade.php +++ b/resources/views/penilai/components/print-out-standard.blade.php @@ -1,1910 +1,685 @@ - - - - - - - - - Laporan Penilai jaminan - - - - +@include('lpj::penilai.components.header') +@php + $data = ''; + $dokument = null; + foreach ($permohonan->documents as $dokumen) { + $data .= $dokumen->jenisJaminan->name . ', '; + $dokument = $dokumen; + } + $data = rtrim($data, ', '); +@endphp +
@php - $data = ''; - $dokument = null; - foreach ($permohonan->documents as $dokumen) { - $data .= $dokumen->jenisJaminan->name . ', '; - $dokument = $dokumen; - } - $data = rtrim($data, ', '); - @endphp -
- @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; + $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 ($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; - } + if ($user && $user->hasRole('senior-officer')) { + $senior_officer = $user; + break 3; } } } } } } + } - @endphp - -
-
- + @endphp +
+

LAPORAN PENILAIAN ATAS + {{ $data }}

+

NO: {{ $nomorLaporan }}

+
+
+
+ + + + + @endif + + + + @if (isset($detail->details)) + @if (json_decode($detail->details)) + @foreach (json_decode($detail->details) as $key => $value) + @if (!is_null($value) && $value !== '') + + + + @endif + @endforeach + @endif + @endif + + @endforeach + @endif +
+ - + + - + + + + + + + + + + +
- @include('lpj::component.logo-bag', ['width' => 190, 'height' => 45.51]) + Cabang/Pemohon: + {{ $permohonan->debiture->branch->name ?? '' }} -
-

Tanggal: {{ date('Y-m-d') }}

-

Waktu: {{ date('H:i:s') }}

-

User: {{ Auth::user()->name }}

-
+
Tujuan Penilai: + {{ $permohonan->jenisFasilitasKredit->name ?? '' }}
Ao:{{ $permohonan->user->name ?? '' }}
+
+ + + + + + + + + +
Tanggal Order: + {{ formatTanggalIndonesia($permohonan->create_at) }}
Tannggal Survey: + {{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
- -
-

LAPORAN PENILAIAN ATAS - {{ $data }}

-

NO: {{ $nomorLaporan }}

-
- - -
- -
-
- Cabang : {{ $permohonan->debiture->branch->name ?? '' }}
- - - - - -
- A - - TUJUAN PENILAIAN -
-
- - - - - - - - - - -
- - - - - - - - - -
Permintaan (A/O){{ $permohonan->user->name }}
Jenis Fasilitas {{ $permohonan->jenisFasilitasKredit->name ?? '' }}
-
- - - - - - - - - -
Tanggal{{ formatTanggalIndonesia($permohonan->created_at) }}
Kunjungan Tanggal{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}
-
- @if (isset($basicData['tujuanPenilaian'])) - - - @foreach ($basicData['tujuanPenilaian'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
-
- -
-
- - - - - -
- 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{{ $forminspeksi['asset']['pihak_bank'] ?? '' }}
-
-
- -
-
- - - - - -
- C - - JENIS JAMINAN -
-
- - @if (isset($basicData['jenisJaminan'])) - - - - @foreach ($basicData['jenisJaminan'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
- - -
-
- - - - - -
- D - - LOKASI JAMINAN -
-
- - - - - - - - - - - - - - - - - - - - - -
Terletak di {{ $alamat['address'] ?? '' }}
Kelurahan{{ $alamat['village_code'] ?? '' }}
Kecamatan{{ $alamat['district_code'] ?? '' }}
Kotamadya {{ $alamat['city_code'] ?? '' }}
Propinsi{{ $alamat['province_code'] ?? '' }}
- -
- -
-
- - - - - -
- E - - STATUS KEPEMILIKAN, HUBUNGAN DAN PENGHUNI -
-
- - - - @if (@isset($dokumen)) - @foreach ($dokumen->detail as $detail) - - @if (isset($detail->dokumen_jaminan)) - - - @endif - - - - @if (isset($detail->details)) - @if (json_decode($detail->details)) - @foreach (json_decode($detail->details) as $key => $value) - @if (!is_null($value) && $value !== '') - - - - @endif - @endforeach - @endif - @endif - - @endforeach - @endif - - - - - - - - - @php - // Ambil nilai hub_cadeb langsung - $hubCadeb = isset($forminspeksi['asset']['hub_cadeb']) - ? $forminspeksi['asset']['hub_cadeb'] - : null; - - // Jika nilai adalah array dengan key 'sesuai', ambil nilainya - if (is_array($hubCadeb) && isset($hubCadeb['sesuai'])) { - $hubCadeb = $hubCadeb['sesuai']; - } - @endphp - - - - - - @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'] - : $forminspeksi['asset']['hub_cadeb_penghuni']['sesuai']; - @endphp - - - -
{{ $detail->name ?? '' }} - @if (isset($detail->dokumen_jaminan)) - @php - $dokumen_jaminan = is_array(json_decode($detail->dokumen_jaminan)) - ? json_decode($detail->dokumen_jaminan) - : [$detail->dokumen_jaminan]; - $dokumen_nomor = is_array(json_decode($detail->dokumen_nomor)) - ? json_decode($detail->dokumen_nomor) - : ($detail->dokumen_nomor - ? [$detail->dokumen_nomor] - : []); - @endphp - - @foreach ($dokumen_jaminan as $index => $dokumen) -
- @if (!empty($dokumen_nomor[$index])) - {{ $dokumen_nomor[$index] }} - @endif -
- @endforeach - @endif -
- {{ ucwords(str_replace('_', ' ', $key)) ?? '' }}{{ $value }} - @if ($key == 'luas_bangunan' || $key == 'luas_tanah') - m2 - @endif -
Atas Nama{{ $dokument->pemilik->name ?? '' }}
Hubungan Pemilik Jaminan dengan Debitur - - @if (isset($basicData['hubCadeb'])) - - @php $count = 0; @endphp - - @foreach ($basicData['hubCadeb'] as $item) - - @php $count++; @endphp - - @if ($count % 3 === 0) - - - @endif - @endforeach - - @if ($count % 3 !== 0) - @for ($i = 0; $i < 3 - ($count % 3); $i++) - - @endfor - @endif - -
- -
- @endif -
Hubungan Penghuni Jaminan dengan Debitur - @if (isset($basicData['hubPenghuni'])) - - - - -
- {{ $hubCadeb ?? '' }} -
- @endif -
- - -
- -
-
- - - - - -
FANALISA {{ $data }}
-
- @foreach ($permohonan->documents as $dokumen) - @if ($dokumen->jenisJaminan) - @php - $formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true); - @endphp - @if (isset($formKategori) && $formKategori) - @php - $kategoriArray = is_array($formKategori) ? $formKategori : [$formKategori]; - $kategoriUnik = array_unique($kategoriArray); - @endphp - - @foreach ($kategoriUnik as $kategori) - @if ($kategori === 'tanah') - - - @php - $cekLuas = isset( - $forminspeksi['tanah']['luas_tanah']['tidak sesuai'], - ) - ? 'tidak sesuai' - : 'sesuai'; - - $luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Luas Tanah{{ $luas }}
Bentuk Tanah - @if (isset($basicData['bentukTanah'])) - - - @foreach ($basicData['bentukTanah'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Kontur Tanah - @if (isset($basicData['konturTanah'])) - - - @foreach ($basicData['konturTanah'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Ketinggian Tanah - @if (isset($basicData['ketinggianTanah'])) - - - @foreach ($basicData['ketinggianTanah'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Kondisi Fisik Tanah - @if (isset($basicData['kondisiFisikTanah'])) - - - @foreach ($basicData['kondisiFisikTanah'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Tusuk Sate - - -
Lockland - - -
- - - - @php - $cekLuasBangunan = isset( - $forminspeksi['bangunan']['luas_tanah_bagunan']['tidak sesuai'], - ) - ? 'tidak sesuai' - : 'sesuai'; - $luasBangunan = - $forminspeksi['bangunan']['luas_tanah_bagunan'][$cekLuasBangunan] ?? null; - @endphp - - - - - - - - - - - - - - - - - - - - - - - - @if (isset($basicData['spekKategoriBangunan'])) - @foreach ($basicData['spekKategoriBangunan'] as $index => $spesifikasi) - - - - - @endforeach - @endif - - - - -
Luas Tanah Bangunan{{ $luasBangunan }}
Jenis Bangunan - @if (isset($basicData['jenisBangunan'])) - - - @foreach ($basicData['jenisBangunan'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Kondisi Bangunan - @if (isset($basicData['kondisiBangunan'])) - - - @foreach ($basicData['kondisiBangunan'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Sifat Bangunan - @if (isset($basicData['sifatBangunan'])) - - - @foreach ($basicData['sifatBangunan'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
{{ $spesifikasi->name }} - - @if (isset($basicData['spekBangunan'])) - @php $count = 0; @endphp - - @foreach ($basicData['spekBangunan'] as $kategori) - @if ($kategori->spek_kategori_bangunan_id == $spesifikasi->id) - @php - $selectedValues = []; - foreach ( - $forminspeksi['bangunan']['spesifikasi_bangunan'] - as $bangunan - ) { - if ( - isset( - $bangunan['spek_kategori_bangunan'][ - $spesifikasi->name - ], - ) - ) { - $selectedValues = array_merge( - $selectedValues, - array_values( - $bangunan['spek_kategori_bangunan'][ - $spesifikasi->name - ], - ), - ); - } - } - $lainnyaValue = - $forminspeksi['bangunan']['spesifikasi_bangunan'][0][ - 'spek_kategori_bangunan' - ][$spesifikasi->name]['lainnya'] ?? ''; - @endphp - - - - @php $count++; @endphp - - @if ($count % 3 == 0) - - - @endif - @endif - @endforeach - - @endif -
- -
-
- @elseif ($kategori === 'apartemen-kantor') - - - @php - $cekLuas = isset($forminspeksi['luas_unit']['tidak sesuai']) - ? 'tidak sesuai' - : 'sesuai'; - - $luas = $forminspeksi['luas_unit'][$cekLuas] ?? null; - @endphp - - - - - - - - - - - - -
Luas Unit:{{ $luas ?? '' }}
Bentuk Unit - @if (isset($basicData['bentukUnit'])) - - - @foreach ($basicData['bentukUnit'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif - -
Kondisi Unit - @if (isset($basicData['kondisiUnit'])) - - - @foreach ($basicData['kondisiUnit'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Posisi Unit - @if (isset($basicData['posisiUnit'])) - - - @foreach ($basicData['posisiUnit'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
View Unit - @if (isset($basicData['view'])) - - - @foreach ($basicData['view'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
- @endif - @endforeach - @endif - @endif - @endforeach -
- -
-
- - - - - -
- G - - SARANA PELENGKAP DAN LINGKUNGAN -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Jarak Jalan Utama{{ $forminspeksi['lingkungan']['jarak_jalan_utama'] ?? 'Tidak Diketahui' }}
Jalan Lingkungan{{ $forminspeksi['lingkungan']['jarak_jalan_utama'] ?? 'Tidak Diketahui' }}
Jarak CBD Point{{ $forminspeksi['lingkungan']['jarak_cbd_point'] ?? 'Tidak Diketahui' }}
Nama CBD Point{{ $forminspeksi['lingkungan']['nama_cbd_point'] ?? 'Tidak Diketahui' }}
Lebar Perkerasan Jalan{{ $forminspeksi['lingkungan']['lebar_perkerasan_jalan'] ?? 'Tidak Diketahui' }}
Sarana Pelengkap - @if (isset($basicData['saranaPelengkap'])) - - - @foreach ($basicData['saranaPelengkap'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Lapisan Perkerasan Jalan - @if (isset($basicData['perkerasanJalan'])) - - - @foreach ($basicData['perkerasanJalan'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Lapisan Perkerasan Jalan - @if (isset($basicData['laluLintasLokasi'])) - - - @foreach ($basicData['laluLintasLokasi'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Golongan Masyarakat Sekitar - @if (isset($basicData['golMasySekitar'])) - - - @foreach ($basicData['golMasySekitar'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Terletak di Daerah - @if (isset($basicData['terletakDiArea'])) - - - @foreach ($basicData['terletakDiArea'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Disekitar Lokasi -
- - -
-
Merupakan Daerah - @if (isset($basicData['merupakanDaerah'])) - - - @foreach ($basicData['merupakanDaerah'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
Fasilitas Umum Dekat Lokasi - @if (isset($basicData['fasilitasObjek'])) - - - @foreach ($basicData['fasilitasObjek'] as $index => $item) - @if ($index % 3 == 0 && $index > 0) - - - @endif - - @endforeach - -
- -
- @endif -
-
- - -
-
- - - - - -
- H - - ASURANSI -
-
- - @if (!empty($lpjData['asuransi_luas_bangunan'])) - - - - - - - - - - - - - - - - @else - - - - @endif -
Luas Bangunan - {{ $lpjData['asuransi_luas_bangunan'] ?? '' }}
HargaRp. - {{ $lpjData['asuransi_nilai_1'] ?? '' }}
Nilai Pasar Wajar (Rp)Rp. - {{$lpjData['asuransi_nilai_2'] ?? '' }}
Tidak Ada
-
- -
-
- - - - - -
- I - - KESIMPULAN DAN SARAN PENILAI, INFORMASI HARGA, - TOTAL NILAI JAMINAN DAN CATATAN PERLU DIPERHATIKAN -
-
- - - - - - - - - - {{-- Faktor Negatif --}} - - - - - - @if (!empty($forminspeksi['fakta']['rute_menuju'])) - - - - - - @endif - - @if (!empty($forminspeksi['fakta']['batas_batas_input'])) - - - - - @endif - - @if (!empty($forminspeksi['fakta']['kondisi_lingkungan'])) - - - - - @endif - @if (!empty($forminspeksi['fakta']['informasi_dokument'])) - - - - - @endif - - - - - - - @if (!empty($forminspeksi['fakta']['keterangan'])) - - - - - @endif - {{-- Lain-lain --}} - - - - - - - - - - - - - - - @php - $labelNilai = [ - 'bangunan' => 'Luas Bangunan', - 'tanah' => 'Luas Tanah', - 'apartement-kantor' => 'Luas Apartemen/Kantor', - '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])) - - - - - - @endif - @endforeach - - @if (isset($lpjData['npw_tambahan'])) - @foreach ($lpjData['npw_tambahan'] as $npw) - - - - - - @endforeach - @endif - - - - - - - - - - - - - - - - - - - - - - - - - -
1. Kesimpulan dan saran penilai:
Faktor Positif - @isset($forminspeksi['fakta']['fakta_positif']) - - @foreach ($forminspeksi['fakta']['fakta_positif'] as $key => $item) - - - - @endforeach -
{!! nl2br(e($item)) !!}
- @endisset -
Faktor Negatif - @php - $faktaNegatif = $forminspeksi['fakta']['fakta_negatif'] ?? []; - $faktaNegatifFiltered = is_array($faktaNegatif) - ? array_filter($faktaNegatif, function ($item) { - return !empty(trim($item)); - }) - : []; - @endphp - - @if (!empty($faktaNegatifFiltered)) - - @foreach ($faktaNegatifFiltered as $key => $item) - - - - @endforeach -
{!! nl2br(e($item)) !!}
- @else -

Tidak ada faktor negatif yang teridentifikasi.

- @endif -
Rute Menuju - {!! nl2br(e($forminspeksi['fakta']['rute_menuju'] ?? '')) !!} -
Batas batas - @foreach ($forminspeksi['fakta']['batas_batas_input'] ?? [] as $arah => $batas) - @if ($batas) -

- {{ $arah }} : {{ $batas }}

- @endif - @endforeach -
Kondisi Lingkungan - @foreach ($forminspeksi['fakta']['kondisi_lingkungan'] ?? [] as $kondisi) -

{!! nl2br(e($kondisi)) !!}

- @endforeach -
Informasi Lain terkait Dokumen - @foreach ($forminspeksi['fakta']['informasi_dokument'] ?? [] as $informasi) -

{!! nl2br(e($informasi)) !!}

- @endforeach -
Informasi Dinas Tata Ruang - - @php - $informasi = [ - 'peruntukan', - 'kdb', - 'kdh', - 'gsb', - 'max_lantai', - 'klb', - 'gss', - 'pelebaran_jalan', - 'nama_petugas', - ]; - @endphp - - @foreach ($informasi as $key) - @if (isset($forminspeksi['fakta'][$key]) && $forminspeksi['fakta'][$key] !== '-') -

- {{ ucfirst(str_replace('_', ' ', $key)) }}: - {{ $forminspeksi['fakta'][$key] }}

- @endif - @endforeach - -
Catatan yang Perlu Diperhatikan - @php - $keterangan = $forminspeksi['fakta']['keterangan'] ?? ''; - if (is_array($keterangan)) { - $keterangan = implode(', ', array_filter($keterangan)); - } - @endphp - - @if (!empty($keterangan)) - - - - -
{{ $keterangan }}
- @endif -
2. Informasi Harga:
Instansi yang relevan : - - @php - $exportData = []; - if (isset($dataPembanding['data_pembanding'])) { - foreach ($dataPembanding['data_pembanding'] as $index => $pembanding) { - $exportData['pembanding' . ($index + 1)] = $pembanding; - } - } - - $fields = [ - 'jenis_aset' => 'Jenis properti', - 'harga' => 'Harga Penawaran', - 'telepon' => 'Penjual (HP)', - 'penawaran' => 'Ditawarkan Sejak', - 'luas_tanah' => 'Luas Tanah', - 'luas_bangunan' => 'Luas Bangunan', - 'kordinat' => 'Titik Kordinat', - ]; - @endphp - - @foreach ($exportData as $index => $data) - - - - - @foreach ($fields as $key => $label) - - - - - - @endforeach -
- Pembanding {{ substr($index, -1) }} -
{{ $label }}: - @if ($key == 'luas_tanah' || $key == 'luas_bangunan') - {{ $data[$key] ?? '-' }} m² - @elseif($key == 'harga' || $key == 'harga_diskon') - Rp. {{ $data[$key] ?? 0 }} - @elseif($key == 'kordinat') - @php - $lat = $data['kordinat_lat'] ?? null; - $lng = $data['kordinat_lng'] ?? null; - @endphp - @if ($lat && $lng) - {{ $lat }},{{ $lng }} - @else - - - @endif - @else - {{ $data[$key] ?? '-' }} - @endif -
- @endforeach -
3. Total Nilai Jaminan:
a. Total Nilai Pasar Wajar -
- {{ $label }} {{ $lpjData['luas_' . $key] ?? '' }} m2 - - X Rp - {{ $lpjData['nilai_' . $key . '_1'] ?? '' }} - - = Rp - {{ $lpjData['nilai_' . $key . '_2'] ?? '' }} -
- {{ $npw['name'] }} {{ $npw['luas'] }} m2 - - X Rp - {{ $npw['nilai_1'] }} - - = Rp - {{ $npw['nilai_2'] }} -
Total Nilai Pasar Wajar - = -
- Rp {{ $lpjData['total_nilai_pasar_wajar'] ?? '' }} -
-
- b. Total Nilai Likuidasi -
- {{ $lpjData['likuidasi'] ?? '' }}% - - X Total Nilai Pasar Wajar - - = Rp - {{ $lpjData['likuidasi_nilai_2'] ?? '' }} -
4. Catatan yang Perlu Diperhatikan:
Catatan yang Perlu Diperhatikan: - @php - $keterangan = $forminspeksi['fakta']['keterangan'] ?? ''; - if (is_array($keterangan)) { - $keterangan = implode(', ', array_filter($keterangan)); - } - @endphp - - @if (!empty($keterangan)) - - - - -
{{ $keterangan }}
- @endif -
- - -
- -
-
    -
  1. PENILAIAN INI DIBUAT BERDASARKAN ATURAN YANG - BERLAKU DI SUBDIT APPRAISAL
  2. -
  3. LAPORAN INI DIBUAT BERDASARKAN DATA FOTOCOPY - DOKUMEN YANG DITERIMA PENILAI DENGAN ASUMSI BAHWA DATA TERSEBUT SESUAI DENGAN - DOKUMEN ASLINYA
  4. -
  5. 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
  6. -
  7. LAPORAN INI DIGUNAKAN HANYA UNTUK KEPENTINGAN - INTERNAL DAN DILARANG MENYEBARKAN KEPADA PIHAK KETIGA
  8. -
-
-
- -
- - - - @php - use Modules\Usermanagement\Models\User; - - $penilaiUser = User::where('id', $penilai->userPenilaiTeam->id)->first(); - $imagePathPenilai = storage_path( - 'app/public/signatures/' . $penilaiUser->id . '/' . $penilaiUser->sign, - ); - - $soUser = User::where('id', $senior_officer->id)->first(); - $imagePathSo = storage_path('app/public/signatures/' . $soUser->id . '/' . $soUser->sign); - - $imagePathEO = storage_path( - 'app/public/signatures/' . - User::role('EO Appraisal')->first()->id . - '/' . - User::role('EO Appraisal')->first()->sign, - ); - - $imagePathDD = storage_path( - 'app/public/signatures/' . - User::role('DD Appraisal')->first()->id . - '/' . - User::role('DD Appraisal')->first()->sign, - ); - @endphp - - - @if ($permohonan->approval_so != null) - - @endif - @if ($permohonan->approval_eo != null) - - @endif - @if ($permohonan->approval_dd != null) - - @endif - - - - @if ($permohonan->approval_so != null) - - @endif - - @if ($permohonan->approval_eo != null) - - @endif - @if ($permohonan->approval_dd != null) - - @endif - -
- @if (file_exists($imagePathPenilai)) - {{ $imagePathPenilai }} - @endif - - @if (file_exists($imagePathSo)) - {{ $imagePathSo }} - @endif - - @if (file_exists($imagePathEO)) - {{ $imagePathEO }} - @endif - - @if (file_exists($imagePathDD)) - {{ $imagePathDD }} - @endif -
{{ $penilai->userPenilaiTeam->name ?? '' }}
- - {{ ucwords(strtolower('PENILAI')) }} - -
- {{ $senior_officer->name ?? '' }}
- - {{ ucwords(strtolower('SENIOR OFFICER')) }} - - -
- {{ User::role('EO Appraisal')->first()->name ?? '' }}
- - {{ ucwords(strtolower('EXECUTIVE OFFICER')) }} - -
- {{ User::role('DD Appraisal')->first()->name ?? '' }}
- - {{ ucwords(strtolower('DEPUTY DIRECTOR')) }} - -
- -
- -
- + + +
+ + + + + +
+ IDENTITAS CADEB/DEBITUR +
+ + + + + + + + + + + + + + + + + +
Nama Debitur:{{ $permohonan->debiture->name ?? '' }}
Debitur / Wakil Debitur:{{ $permohonan->debiture->name ?? '' }} +
Pihak Bank selain Apraisal:{{ $forminspeksi['asset']['pihak_bank'] ?? '' }} +
+ + + + +
+ DESKRIPSI DAN ALAMAT ASET +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Terletak di: {{ $alamat['address'] ?? '' }}
Kelurahan:{{ $alamat['village_code'] ?? '' }}
Kecamatan:{{ $alamat['district_code'] ?? '' }}
Kotamadya: {{ $alamat['city_code'] ?? '' }}
Propinsi:{{ $alamat['province_code'] ?? '' }}
+ + + + +
+ DOKUMEN +
+ + @if (@isset($dokumen)) + @foreach ($dokumen->detail as $detail) - - - - - - - - - - - - - - -
Nama Debitur:{{ $permohonan->debiture->name ?? '' }}
Nomor Laporan:{{ $nomorLaporan }}
Tanggal Laporan: - {{ formatTanggalIndonesia($tanggalLaporan) ?? '' }} -
-
-
-
-
- PETA -
-
-
- @php - $fotoTypes = ['foto_gistaru', 'foto_bhumi', 'foto_argis_region', 'foto_tempat']; - // Memindahkan foto_tempat ke depan jika ada - if (($key = array_search('foto_tempat', $fotoTypes)) !== false) { - unset($fotoTypes[$key]); - array_unshift($fotoTypes, 'foto_tempat'); - } - @endphp + @if (isset($detail->dokumen_jaminan)) +
+ {{ $detail->name ?? '' }} + : + @if (isset($detail->dokumen_jaminan)) + @php + $dokumen_jaminan = is_array(json_decode($detail->dokumen_jaminan)) + ? json_decode($detail->dokumen_jaminan) + : [$detail->dokumen_jaminan]; + $dokumen_nomor = is_array(json_decode($detail->dokumen_nomor)) + ? json_decode($detail->dokumen_nomor) + : ($detail->dokumen_nomor + ? [$detail->dokumen_nomor] + : []); + @endphp - @if (isset($forminspeksi)) - @php $counter = 0; @endphp - @foreach ($fotoTypes as $type) - @php - $imagePath = $forminspeksi[$type] ?? null; - @endphp - @if ($imagePath && file_exists(storage_path('app/public/' . $imagePath))) - @if ($counter % 2 == 0) -
- @endif -
- {{ $type }} -

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

-
- @if ($counter % 2 == 1 || $loop->last) + @foreach ($dokumen_jaminan as $index => $dokumen) +
+ @if (!empty($dokumen_nomor[$index])) + {{ $dokumen_nomor[$index] }} + @endif
- @endif - @php $counter++; @endphp + @endforeach @endif - @endforeach +
+ {{ ucwords(str_replace('_', ' ', $key)) ?? '' }}:{{ $value }} + @if ($key == 'luas_bangunan' || $key == 'luas_tanah') + m2 + @endif +
+ + + + +
+ HUBUNGAN CADEB/DEBITUR DENGAN PEMILIK DAN PENGHUNI +
+ + + @php + + $cekHub = + isset($forminspeksi['asset']['hub_cadeb']) && $forminspeksi['asset']['hub_cadeb'] === 'sesuai' + ? 'sesuai' + : 'tidak sesuai'; + + $hubCadeb = isset($forminspeksi['asset']['hub_cadeb'][$cekHub]) + ? $forminspeksi['asset']['hub_cadeb']['tidak sesuai'] + : $forminspeksi['asset']['hub_cadeb']['sesuai']; + @endphp + + + + + + @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'] + : $forminspeksi['asset']['hub_cadeb_penghuni']['sesuai']; + @endphp + + + + +
Hubungan Pemilik Jaminan dengan Debitu:{{ $hubCadeb ?? '' }}
Hubungan Penghuni Jaminan dengan Debitur:{{ $hubCadeb ?? '' }}
+ + + @foreach ($permohonan->documents as $dokumen) + @if ($dokumen->jenisJaminan) + @php + $formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true); + @endphp + @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 + @endforeach + + + + + +
+ INFORMASI DATA PEMBANDING +
+ + + + + + +
Informasi data pembanding: + @php + $exportData = []; + if (isset($dataPembanding['data_pembanding'])) { + foreach ($dataPembanding['data_pembanding'] as $index => $pembanding) { + $exportData['pembanding' . ($index + 1)] = $pembanding; + } + } + + $fields = [ + 'jenis_aset' => 'Jenis properti', + 'harga' => 'Harga Penawaran', + 'telepon' => 'Penjual (HP)', + 'penawaran' => 'Ditawarkan Sejak', + 'luas_tanah' => 'Luas Tanah', + 'luas_bangunan' => 'Luas Bangunan', + 'kordinat' => 'Titik Kordinat', + ]; + @endphp + + @foreach ($exportData as $index => $data) + + + + + @foreach ($fields as $key => $label) + + + + + + @endforeach +
+ Pembanding {{ substr($index, -1) }} +
{{ $label }}: + @if ($key == 'luas_tanah' || $key == 'luas_bangunan') + {{ $data[$key] ?? '-' }} m² + @elseif($key == 'harga' || $key == 'harga_diskon') + Rp. {{ $data[$key] ?? 0 }} + @elseif($key == 'kordinat') + @php + $lat = $data['kordinat_lat'] ?? null; + $lng = $data['kordinat_lng'] ?? null; + @endphp + @if ($lat && $lng) + {{ $lat }},{{ $lng }} + @else + - + @endif + @else + {{ $data[$key] ?? '-' }} + @endif +
+ @endforeach +
+ + + + +
+ TOTAL NILAI PASAR WAJAR +
+ + + + + @php + $labelNilai = [ + 'bangunan' => 'Luas Bangunan', + 'tanah' => 'Luas Tanah', + 'apartement-kantor' => 'Luas Apartemen/Kantor', + '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])) + + + + + + @endif + @endforeach + + @if (isset($lpjData['npw_tambahan'])) + @foreach ($lpjData['npw_tambahan'] as $npw) + + + + + + @endforeach + @endif + + + + + + + + + + + + + + + +
1. Total Nilai Pasar Wajar +
+ {{ $label }} {{ $lpjData['luas_' . $key] ?? '' }} m2 + + X Rp + {{ $lpjData['nilai_' . $key . '_1'] ?? '' }} + + = Rp + {{ $lpjData['nilai_' . $key . '_2'] ?? '' }} +
+ {{ $npw['name'] }} {{ $npw['luas'] }} m2 + + X Rp + {{ $npw['nilai_1'] }} + + = Rp + {{ $npw['nilai_2'] }} +
Total Nilai Pasar Wajar + = +
+ Rp {{ $lpjData['total_nilai_pasar_wajar'] ?? '' }}
- -
-
-
-
- FOTO JAMINAN -
-
- @include('lpj::penilai.components.foto-jaminan') +
+ 2. Total Nilai Likuidasi +
+ {{ $lpjData['likuidasi'] ?? '' }}% + + X Total Nilai Pasar Wajar + + = Rp + {{ $lpjData['likuidasi_nilai_2'] ?? '' }} +
+ @php + $keterangan = $lpjData['keterangan_penilai'] ?? ''; + if (is_array($keterangan)) { + $keterangan = implode(', ', array_filter($keterangan)); + } + @endphp + @if (!empty($keterangan)) + + + + + + +
Catatan yang Perlu Diperhatikan: + + {!! nl2br(e($keterangan)) !!} + +
+ @endif + + + + +
Demikian laporan penilai jaminan ini di buat secara objektif, tanpa adanya pengaruh baik intern + maupun ekstern
+ + + @php + use Modules\Usermanagement\Models\User; + + $penilaiUser = User::where('id', $penilai->userPenilaiTeam->id)->first(); + $imagePathPenilai = storage_path('app/public/signatures/' . $penilaiUser->id . '/' . $penilaiUser->sign); + + $soUser = User::where('id', $senior_officer->id)->first(); + $imagePathSo = storage_path('app/public/signatures/' . $soUser->id . '/' . $soUser->sign); + + $imagePathEO = storage_path( + 'app/public/signatures/' . + User::role('EO Appraisal')->first()->id . + '/' . + User::role('EO Appraisal')->first()->sign, + ); + + $imagePathDD = storage_path( + 'app/public/signatures/' . + User::role('DD Appraisal')->first()->id . + '/' . + User::role('DD Appraisal')->first()->sign, + ); + @endphp + + + @if ($permohonan->approval_so != null) + + @endif + @if ($permohonan->approval_eo != null) + + @endif + @if ($permohonan->approval_dd != null) + + @endif + + + + @if ($permohonan->approval_so != null) + + @endif + + @if ($permohonan->approval_eo != null) + + @endif + @if ($permohonan->approval_dd != null) + + @endif + +
+ @if (file_exists($imagePathPenilai)) + {{ $imagePathPenilai }} + @endif + + @if (file_exists($imagePathSo)) + {{ $imagePathSo }} + @endif + + @if (file_exists($imagePathEO)) + {{ $imagePathEO }} + @endif + + @if (file_exists($imagePathDD)) + {{ $imagePathDD }} + @endif +
{{ $penilai->userPenilaiTeam->name ?? '' }}
+ + {{ ucwords(strtolower('PENILAI')) }} + +
+ {{ $senior_officer->name ?? '' }}
+ + {{ ucwords(strtolower('SENIOR OFFICER')) }} + + +
+ {{ User::role('EO Appraisal')->first()->name ?? '' }}
+ + {{ ucwords(strtolower('EXECUTIVE OFFICER')) }} + +
+ {{ User::role('DD Appraisal')->first()->name ?? '' }}
+ + {{ ucwords(strtolower('DEPUTY DIRECTOR')) }} + +
+ + + + + +
+ NILAI ASURANSI +
+ + @if (!empty($lpjData['asuransi_luas_bangunan'])) + + + + + + + + + + + + + + + + @else + + + + @endif +
Luas Bangunan + {{ $lpjData['asuransi_luas_bangunan'] ?? '' }}
HargaRp. + {{ $lpjData['asuransi_nilai_1'] ?? '' }}
Nilai Pasar Wajar (Rp)Rp. + {{ $lpjData['asuransi_nilai_2'] ?? '' }}
Tidak Ada
+
+ +
+ +
+
    +
  1. PENILAIAN INI DIBUAT BERDASARKAN ATURAN YANG + BERLAKU DI SUBDIT APPRAISAL
  2. +
  3. LAPORAN INI DIBUAT BERDASARKAN DATA FOTOCOPY + DOKUMEN YANG DITERIMA PENILAI DENGAN ASUMSI BAHWA DATA TERSEBUT SESUAI DENGAN + DOKUMEN ASLINYA
  4. +
  5. 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
  6. +
  7. LAPORAN INI DIGUNAKAN HANYA UNTUK KEPENTINGAN + INTERNAL DAN DILARANG MENYEBARKAN KEPADA PIHAK KETIGA
  8. +
- -
- Cabang : {{ $permohonan->debiture->branch->name ?? '' }} -
- + @endphp - - - + @if (isset($forminspeksi)) + @php $counter = 0; @endphp + @foreach ($fotoTypes as $type) + @php + $imagePath = $forminspeksi[$type] ?? null; + @endphp + @if ($imagePath && file_exists(storage_path('app/public/' . $imagePath))) + @if ($counter % 2 == 0) +
+ @endif +
+ {{ $type }} +

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

+
+ @if ($counter % 2 == 1 || $loop->last) +
+ @endif + @php $counter++; @endphp + @endif + @endforeach + @endif + +
+
+ + + +
+ FOTO JAMINAN +
+ @include('lpj::penilai.components.foto-jaminan') +
+
+
+@include('lpj::penilai.components.footer') diff --git a/resources/views/penilai/components/print-resume.blade.php b/resources/views/penilai/components/print-resume.blade.php index 5ad6344..f7db545 100644 --- a/resources/views/penilai/components/print-resume.blade.php +++ b/resources/views/penilai/components/print-resume.blade.php @@ -1,112 +1,4 @@ - - - - - - - - - Laporan Penilai Jaminan - - - - - +@include('lpj::penilai.components.header') @php $data = ''; foreach ($permohonan->documents as $dokumen) { @@ -135,22 +27,6 @@ } $data = rtrim($data, ', '); @endphp -
@@ -494,9 +370,4 @@ -
- Cabang : {{ $permohonan->debiture->branch->name ?? '' }} -
- - - + @include('lpj::penilai.components.footer') \ No newline at end of file diff --git a/resources/views/surveyor/components/data-pembanding.blade.php b/resources/views/surveyor/components/data-pembanding.blade.php index be682c3..c589cec 100644 --- a/resources/views/surveyor/components/data-pembanding.blade.php +++ b/resources/views/surveyor/components/data-pembanding.blade.php @@ -21,6 +21,7 @@ +
@foreach ($permohonan->documents as $dokumen) @if ($dokumen->jenisJaminan) diff --git a/resources/views/surveyor/components/foto.blade.php b/resources/views/surveyor/components/foto.blade.php index e99e09d..7f7a008 100644 --- a/resources/views/surveyor/components/foto.blade.php +++ b/resources/views/surveyor/components/foto.blade.php @@ -6,12 +6,13 @@ @section('content') + {{-- --}}
@@ -152,315 +179,86 @@
-

Rute Menuju Lokasi

+

Upload Foto

-
-
- Seret dan lepas file di sini atau klik untuk unggah -
-
- - -
-
- -
- - Foto Gerbong -
- - -
+
+
+ +
+

Drop files here or click to upload.

+ Upload up to 10 files
- -
-
- @if (isset($formFoto['foto_rute_lainnya']) && is_array($formFoto['foto_rute_lainnya'])) - @foreach ($formFoto['foto_rute_lainnya'] as $index => $photo) -
- -
- Foto Rute -
- -
- -
-
- -
- - -
-
- -
-
-
- @endforeach - @endif - -
- - -
-
-
-
-
-

Lingkungan

-
- -
-
- Seret dan lepas file di sini atau klik untuk unggah -
- -
-
-
-

Objek Jaminan

-
- - @php - $processedCategories = []; - $tanahBangunanTypes = ['KAPAL', 'PESAWAT', 'KENDARAAN', 'ALAT BERAT','MESIN']; - $dokumentName = null; - @endphp - - @foreach ($permohonan->documents as $dokumen) - @if ($dokumen->jenisJaminan) - @php - $dokumentName =$dokumen->jenisJaminan->name; - $formKategori = json_decode($dokumen->jenisJaminan->form_kategori, true); - @endphp - @if (isset($formKategori) && $formKategori) - - - - @if (is_array($formKategori)) - @foreach ($formKategori as $kategori) - @php - $fotoObjekJaminanFiltered = $fotoObjekJaminan->filter(function ($item) use ( - $kategori, - ) { - return $item->kategori === $kategori; - }); - @endphp - - @if (!in_array($kategori, $processedCategories)) - @if ($fotoObjekJaminanFiltered->count() > 0) - @foreach ($fotoObjekJaminanFiltered as $item) -
-
- - -
- @php - $matchedFoto = - collect( - $formFoto['object_jaminan'] ?? [], - )->firstWhere('name_objek', $item->name) ?? []; - @endphp - - {{ $item->name }} - -
- - -
- -
- -
-
- @endforeach - @endif - - @php - $processedCategories[] = $kategori; - @endphp - @endif - @endforeach - @endif - @endif - @endif - @endforeach - - @if (!in_array(strtoupper($dokumentName), $tanahBangunanTypes)) -
- -
- -
-
Lantai 1
- - -
-
-
-
- Seret dan lepas file di sini atau klik untuk unggah -
-
-
- -
-
- -
- -
- - -
-
- -
- - Gambar foto_basement -
- - -
-
- -
- -
- -
- - - @endif -
-
- - - - - -
-
-
-

Pendamping

-
-
-
-
- Gambar Pendamping - - -
- - -
- - -
-
- @error('pendamping') - {{ $message }} - @enderror -
-
-
- -
- -
+
+
+

+ Data Foto +

+ +
+
+
+ +
+ + +
+
+ + + * Kosongkan jika tidak ada +
+
+ + +
+
+ + + * Kosongkan jika tidak ada +
+
+ + {{-- --}} + +
+ +
+
+ + + @include('lpj::surveyor.components.modal-kamera') @endsection @@ -468,12 +266,14 @@ @include('lpj::surveyor.js.fotojs') @include('lpj::surveyor.js.utils') @push('scripts') + {{-- --}}