Merge branch 'staging' of https://git.putrakuningan.com/daengdeni/lpj into tender
This commit is contained in:
@@ -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',
|
||||
|
||||
@@ -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()
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
<table style="width: 100%; ">
|
||||
<tr>
|
||||
<td style="width: 100%; border: 1px solid #000; text-align: center;">
|
||||
ANALISA UNIT
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="width: 100%; ">
|
||||
<tr>
|
||||
@php
|
||||
$cekLuas = isset($forminspeksi['luas_unit']['tidak sesuai'])
|
||||
? 'tidak sesuai'
|
||||
: 'sesuai';
|
||||
|
||||
$luas = $forminspeksi['luas_unit'][$cekLuas] ?? null;
|
||||
@endphp
|
||||
<td style="width: 25%; padding: 2px; vertical-align: top;">Luas Unit</td>
|
||||
<td style="width: 1%; padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="width: 74%; padding: 2px; vertical-align: top;">{{ $luas ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 25%; padding: 2px; vertical-align: top;">Bentuk Unit</td>
|
||||
<td style="width: 1%; padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="width: 74%; padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['bentuk_unit'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($bentukUnit))
|
||||
{{ implode(', ', $bentukUnit) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['kondisi_unit'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($bentukUnit))
|
||||
{{ implode(', ', $bentukUnit) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Posisi Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['posisi_unit'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($bentukUnit))
|
||||
{{ implode(', ', $bentukUnit) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">View Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['view'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($bentukUnit))
|
||||
{{ implode(', ', $bentukUnit) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
145
resources/views/penilai/components/analisa/bangunan.blade.php
Normal file
145
resources/views/penilai/components/analisa/bangunan.blade.php
Normal file
@@ -0,0 +1,145 @@
|
||||
<table style="width: 100%; ">
|
||||
<tr>
|
||||
<td style="width: 100%; border: 1px solid #000; text-align: center;">
|
||||
ANALISA BANGUNAN
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style=" width: 25%; padding: 2px; vertical-align: top;">Luas Bangunan</td>
|
||||
<td style=" width:1%; padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$luasTanahBangunan =
|
||||
$forminspeksi['bangunan']['luas_tanah_bagunan'];
|
||||
|
||||
$output = !empty($luasTanahBangunan['sesuai'])
|
||||
? $luasTanahBangunan['sesuai']
|
||||
: (!empty($luasTanahBangunan['tidak sesuai'])
|
||||
? $luasTanahBangunan['tidak sesuai']
|
||||
: '-');
|
||||
@endphp
|
||||
|
||||
{{ $output }} <sup>m2</sup>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Jenis Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$jenisBangunan =
|
||||
$forminspeksi['bangunan']['jenis_bangunan'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($jenisBangunan))
|
||||
{{ implode(', ', $jenisBangunan) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$kondisiBangunan =
|
||||
$forminspeksi['bangunan']['kondisi_bangunan'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($kondisiBangunan))
|
||||
{{ implode(', ', $kondisiBangunan) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Sifat Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@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 }}
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
@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)
|
||||
<tr>
|
||||
<td colspan="2">Spesifikasi Bangunan {{ $bangunanIndex + 1 }}</td>
|
||||
</tr>
|
||||
@else
|
||||
<tr>
|
||||
<td colspan="2">Spesifikasi Bangunan</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if (isset($basicData['spekKategoriBangunan']))
|
||||
@foreach ($basicData['spekKategoriBangunan'] as $index => $spesifikasi)
|
||||
@if (!empty($spesifikasi->name)) <!-- Hanya tampilkan jika 'name' tidak kosong -->
|
||||
<tr>
|
||||
<td style="vertical-align: top;">{{ $spesifikasi->name }}</td>
|
||||
<td>:</td>
|
||||
<td>
|
||||
@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)
|
||||
<span>
|
||||
{{ $selectedValue }}
|
||||
@if ($selectedValue === 'Lainnya' && $lainnyaValue)
|
||||
: {{ $lainnyaValue }}
|
||||
@endif
|
||||
</span>
|
||||
@else
|
||||
<span>—</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
|
||||
|
||||
|
||||
</table>
|
||||
104
resources/views/penilai/components/analisa/fakta.blade.php
Normal file
104
resources/views/penilai/components/analisa/fakta.blade.php
Normal file
@@ -0,0 +1,104 @@
|
||||
<table class="judul" style="width: 100%; ">
|
||||
<tr>
|
||||
<td style="width: 100%; border: 1px solid #000; text-align: center;">
|
||||
ANALISA FAKTA
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="width: 100%">
|
||||
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Faktor Positif</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@isset($forminspeksi['fakta']['fakta_positif'])
|
||||
<table style="width: 100%; border-collapse: collapse;">
|
||||
@foreach ($forminspeksi['fakta']['fakta_positif'] as $key => $item)
|
||||
<tr>
|
||||
<td>{!! nl2br(e($item)) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
@endisset
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- Faktor Negatif --}}
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Faktor Negatif</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@php
|
||||
$faktaNegatif = $forminspeksi['fakta']['fakta_negatif'] ?? [];
|
||||
$faktaNegatifFiltered = is_array($faktaNegatif)
|
||||
? array_filter($faktaNegatif, function ($item) {
|
||||
return !empty(trim($item));
|
||||
})
|
||||
: [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($faktaNegatifFiltered))
|
||||
<table style="width: 100%; border-collapse: collapse;">
|
||||
@foreach ($faktaNegatifFiltered as $key => $item)
|
||||
<tr>
|
||||
<td>{!! nl2br(e($item)) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
@else
|
||||
<p>Tidak ada faktor negatif yang teridentifikasi.</p>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@if (!empty($forminspeksi['fakta']['rute_menuju']))
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Rute Menuju</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
{!! nl2br(e($forminspeksi['fakta']['rute_menuju'] ?? '')) !!}
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if (!empty($forminspeksi['fakta']['batas_batas_input']))
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Batas batas</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@foreach ($forminspeksi['fakta']['batas_batas_input'] ?? [] as $arah => $batas)
|
||||
@if ($batas)
|
||||
<p> - {{ $arah }} : {{ $batas }}</p>
|
||||
@endif
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if (!empty($forminspeksi['fakta']['kondisi_lingkungan']))
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Kondisi Lingkungan</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@foreach ($forminspeksi['fakta']['kondisi_lingkungan'] ?? [] as $kondisi)
|
||||
{!! nl2br(e($kondisi)) !!}
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if (!empty($forminspeksi['fakta']['informasi_dokument']))
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Informasi Lain terkait
|
||||
Dokumen</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@foreach ($forminspeksi['fakta']['informasi_dokument'] ?? [] as $informasi)
|
||||
{!! nl2br(e($informasi)) !!}
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
|
||||
</table>
|
||||
@@ -0,0 +1,55 @@
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Informasi Dinas Tata Ruang
|
||||
</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@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] !== '-')
|
||||
<p> - {{ ucfirst(str_replace('_', ' ', $key)) }}:
|
||||
{{ $forminspeksi['fakta'][$key] }}</p>
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@if (!empty($forminspeksi['fakta']['keterangan']))
|
||||
<tr>
|
||||
<td width="25%" style="vertical-align: top;">Catatan yang Perlu
|
||||
Diperhatikan</td>
|
||||
<td width="1%" style="vertical-align: top;">:</td>
|
||||
<td style="vertical-align: top;">
|
||||
@php
|
||||
$keterangan = $forminspeksi['fakta']['keterangan'] ?? '';
|
||||
if (is_array($keterangan)) {
|
||||
$keterangan = implode(', ', array_filter($keterangan));
|
||||
}
|
||||
@endphp
|
||||
|
||||
@if (!empty($keterangan))
|
||||
<table style="width: 100%; border-collapse: collapse;">
|
||||
<tr>
|
||||
<td>{!! nl2br(e($keterangan)) !!}</td>
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
</table>
|
||||
129
resources/views/penilai/components/analisa/lingkungan.blade.php
Normal file
129
resources/views/penilai/components/analisa/lingkungan.blade.php
Normal file
@@ -0,0 +1,129 @@
|
||||
<table style="width: 100%; ">
|
||||
<tr>
|
||||
<td style="width: 100%; border: 1px solid #000; text-align: center;">
|
||||
ANALISA LINGKUNGAN
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="width: 100%">
|
||||
@php
|
||||
$lingkungan = $forminspeksi['lingkungan'];
|
||||
$fasilitas = $lingkungan['fasilitas_dekat_object'] ?? [];
|
||||
$fasilitasInput = $lingkungan['fasilitas_dekat_object_input'] ?? [];
|
||||
@endphp
|
||||
|
||||
<tr>
|
||||
<td style=" width:25%; padding: 2px; vertical-align: top;">Jarak Jalan Utama</td>
|
||||
<td style=" width:1%; padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['jarak_jalan_utama'] ?? '-' }} m</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Jalan Lingkungan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['jalan_linkungan'] ?? '-' }} m</td>
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Jarak CBD</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['jarak_cbd_point'] ?? '-' }} m
|
||||
({{ $lingkungan['nama_cbd_point'] ?? '-' }})</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Lebar Perkerasan Jalan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['lebar_perkerasan_jalan'] ?? '-' }} m</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Perkerasan Jalan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:
|
||||
</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $lingkungan['perkerasan_jalan']['perkerasan_jalan'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Lalu Lintas</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ implode(', ', $lingkungan['lalu_lintas'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Golongan Masyarakat Sekitar</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ implode(', ', $lingkungan['gol_mas_sekitar'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Tingkat Keramaian</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $lingkungan['tingkat_keramaian'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Terletak di Area</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $lingkungan['terletak_diarea']['terletak_diarea'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Bangunan Sekitar</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['kondisi_bagunan_disekitar_lokasi'] ?? '-' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Sifat Bangunan Sekitar</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['sifat_bagunan_disekitar_lokasi'] ?? '-' }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@if ($lingkungan['dekat_makam'] == 'ya')
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Dekat Makam</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Ya, Jarak {{ $lingkungan['jarak_makam'] ?? '-' }} m
|
||||
({{ $lingkungan['nama_makam'] ?? '-' }})
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@if ($lingkungan['dekat_tps'] == 'ya')
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Dekat TPS</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Ya, Jarak {{ $lingkungan['jarak_tps'] ?? '-' }} m
|
||||
({{ $lingkungan['nama_tps'] ?? '-' }})</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Daerah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $lingkungan['merupakan_daerah'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@if (!empty($fasilitas))
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Fasilitas Dekat Objek</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@foreach ($fasilitas as $fas)
|
||||
{{ $fas }}
|
||||
@if (isset($fasilitasInput[$fas]))
|
||||
({{ $fasilitasInput[$fas] }})
|
||||
@endif
|
||||
@if (!$loop->last)
|
||||
,
|
||||
@endif
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
</table>
|
||||
148
resources/views/penilai/components/analisa/tanah.blade.php
Normal file
148
resources/views/penilai/components/analisa/tanah.blade.php
Normal file
@@ -0,0 +1,148 @@
|
||||
<table style="width: 100%; ">
|
||||
<tr>
|
||||
<td style="width: 100%; border: 1px solid #000; text-align: center;">
|
||||
ANALISA TANAH
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="width: 100%; ">
|
||||
<tr>
|
||||
@php
|
||||
$cekLuas = isset($forminspeksi['tanah']['luas_tanah']['tidak sesuai']) ? 'tidak sesuai' : 'sesuai';
|
||||
|
||||
$luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
|
||||
@endphp
|
||||
<td style="width: 25%; padding: 2px; vertical-align: top;">Luas Tanah</td>
|
||||
<td style=" width:1%; padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="width: 74%; padding: 2px; vertical-align: top;">{{ $luas ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@php
|
||||
$cekMataAngin = isset($forminspeksi['tanah']['hadap_mata_angin']['tidak sesuai'])
|
||||
? 'tidak sesuai'
|
||||
: 'sesuai';
|
||||
|
||||
$Arah = $forminspeksi['tanah']['hadap_mata_angin'][$cekMataAngin] ?? null;
|
||||
@endphp
|
||||
<td style="padding: 2px; vertical-align: top;">Hadap Mata Angin</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $Arah ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Bentuk Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@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
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Kontur Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$konturTanah = $forminspeksi['tanah']['kontur_tanah'] ?? [];
|
||||
@endphp
|
||||
|
||||
@if (!empty($konturTanah))
|
||||
{{ implode(', ', $konturTanah) }}
|
||||
@else
|
||||
-
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Beda Ketinggian dengan Jalan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@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
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Kontur Jalan Depan Objek</td>
|
||||
<td>:</td>
|
||||
<td>
|
||||
{{ $forminspeksi['tanah']['kontur_jalan'] == 'menurun' ? 'Menurun' : 'Rata' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Posisi Kavling</td>
|
||||
<td>:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@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
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Tusuk Sate</td>
|
||||
<td>:</td>
|
||||
<td>
|
||||
{{ $forminspeksi['tanah']['tusuk_sate'] == 'yes' ? 'Ya' : 'Tidak' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Lockland</td>
|
||||
<td>:</td>
|
||||
<td>
|
||||
{{ $forminspeksi['tanah']['lockland'] == 'yes' ? 'Ya' : 'Tidak' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Fisik Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@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
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
34
resources/views/penilai/components/footer.blade.php
Normal file
34
resources/views/penilai/components/footer.blade.php
Normal file
@@ -0,0 +1,34 @@
|
||||
<footer id="footer">
|
||||
Cabang : {{ $permohonan->debiture->branch->name ?? '' }}
|
||||
</footer>
|
||||
<script>
|
||||
const datas = @json($forminspeksi);
|
||||
console.log(datas);
|
||||
const lpjData = @json($lpjData);
|
||||
console.log(lpjData);
|
||||
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const checkboxes = document.querySelectorAll('.checkbox-lainnya');
|
||||
|
||||
checkboxes.forEach(checkbox => {
|
||||
checkbox.addEventListener('change', function() {
|
||||
const textLainnya = this.closest('label').querySelector('.text-lainnya');
|
||||
|
||||
if (this.checked && this.value === 'Lainnya') {
|
||||
textLainnya.style.display = 'inline';
|
||||
} else if (this.value === 'Lainnya') {
|
||||
textLainnya.style.display = 'none';
|
||||
}
|
||||
});
|
||||
|
||||
// Atur visibilitas awal
|
||||
if (checkbox.checked && checkbox.value === 'Lainnya') {
|
||||
const textLainnya = checkbox.closest('label').querySelector('.text-lainnya');
|
||||
textLainnya.style.display = 'inline';
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,45 +1,6 @@
|
||||
<div>
|
||||
@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
|
||||
|
||||
<style>
|
||||
/* General Styles */
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
@@ -48,7 +9,7 @@
|
||||
width: 100%;
|
||||
margin-bottom: 10px;
|
||||
clear: both;
|
||||
page-break-inside: avoid;
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
|
||||
.photo-row {
|
||||
@@ -72,10 +33,12 @@
|
||||
|
||||
/* Image Styling */
|
||||
.photo-item img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
object-fit: cover;
|
||||
|
||||
width: 300px;
|
||||
height: 300px;
|
||||
object-fit: contain;
|
||||
background-color: #f0f0f0;
|
||||
border-radius: 5px;
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
|
||||
/* Clearfix */
|
||||
@@ -97,124 +60,129 @@
|
||||
}
|
||||
|
||||
.photo-item img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
width: 300px;
|
||||
height: 300px;
|
||||
object-fit: contain;
|
||||
background-color: #f0f0f0;
|
||||
border-radius: 5px;
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 14px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.photo-container {
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
|
||||
.photo-row {
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@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())
|
||||
<p class="text-gray-500">Tidak ada foto yang tersedia.</p>
|
||||
@else
|
||||
@foreach ($mainPhotos as $category => $photos)
|
||||
<div class="photo-container">
|
||||
@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)
|
||||
<div class="photo-row clearfix">
|
||||
@endif
|
||||
<div class="photo-item border">
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $photoName }}
|
||||
</h2>
|
||||
@if ($statusLpj || file_exists($imagePath))
|
||||
<img src="{{ $imagePath }}" alt="{{ $photoName }}" class="photo-image">
|
||||
@endif
|
||||
<h2>{{ $category }}</h2>
|
||||
@php
|
||||
$groupedBySubcategory = $photos->groupBy('sub');
|
||||
@endphp
|
||||
|
||||
@if ($groupedBySubcategory->isEmpty())
|
||||
<p class="text-gray-500">Tidak ada subkategori yang tersedia.</p>
|
||||
@else
|
||||
@foreach ($groupedBySubcategory as $subcategory => $subPhotos)
|
||||
@isset($subcategory)
|
||||
<h6 style="font-size:10px">
|
||||
{{ $subcategory ?: '' }}
|
||||
</h6>
|
||||
@endisset
|
||||
|
||||
<div class="photo-row clearfix">
|
||||
@foreach ($subPhotos as $index => $item)
|
||||
@php
|
||||
$imagePath = storage_path('app/public/' . $item['path']);
|
||||
@endphp
|
||||
<div class="photo-item border">
|
||||
<p style="text-align: center" >{{ $item['name'] }}</p>
|
||||
@if ($statusLpj || file_exists($imagePath))
|
||||
<img src="{{ $imagePath }}" alt="{{ $item['path'] }}" class="photo-image">
|
||||
@else
|
||||
<p class="text-gray-400">Foto tidak ditemukan.</p>
|
||||
@endif
|
||||
@isset($item['description'])
|
||||
<p style="font-size:9px">{{ $item['description'] }}</p>
|
||||
@endisset
|
||||
</div>
|
||||
|
||||
@if (($index + 1) % 2 == 0 && !$loop->last)
|
||||
</div>
|
||||
@if ($counter % 2 == 1 || $loop->last)
|
||||
</div> <!-- Tutup baris setelah 2 item atau di akhir loop -->
|
||||
@endif
|
||||
@php $counter++; @endphp
|
||||
<div class="photo-row clearfix">
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
@else
|
||||
@php
|
||||
$sectionData = $formFoto[$sectionKey] ?? null;
|
||||
@endphp
|
||||
|
||||
@if (!empty($sectionData))
|
||||
@if ($sectionConfig['nested'])
|
||||
@if (isset($sectionData[$sectionConfig['key']][0]))
|
||||
<div class="photo-container">
|
||||
@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)
|
||||
<div class="photo-row clearfix">
|
||||
@endif
|
||||
<div class="photo-item border">
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $sectionConfig['name_prefix']
|
||||
? $sectionConfig['name_prefix'] . ' ' . ($index + 1)
|
||||
: $item['name'] ?? 'Foto ' . ($index + 1) }}
|
||||
</h2>
|
||||
@if ($statusLpj || file_exists($imagePath))
|
||||
<img src="{{ $imagePath }}" alt="{{ $item['path'] }}" class="photo-image">
|
||||
@endif
|
||||
</div>
|
||||
@if ($counter % 2 == 1 || $loop->last)
|
||||
</div> <!-- Tutup baris setelah 2 item atau di akhir loop -->
|
||||
@endif
|
||||
@php $counter++; @endphp
|
||||
@endforeach
|
||||
</div>
|
||||
@endif
|
||||
@else
|
||||
<div class="photo-container">
|
||||
@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)
|
||||
<div class="photo-row clearfix">
|
||||
@endif
|
||||
<div class="photo-item border">
|
||||
@if (!empty($name))
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $name }}
|
||||
</h2>
|
||||
@endif
|
||||
@if ($statusLpj || (file_exists($imagePath) && !empty($photoPath)))
|
||||
<img src="{{ $imagePath }}" alt="{{ $name ?: 'Foto' }}" class="photo-image">
|
||||
@endif
|
||||
</div>
|
||||
@if ($counter % 2 == 1 || $loop->last)
|
||||
</div> <!-- Tutup baris setelah 2 item atau di akhir loop -->
|
||||
@endif
|
||||
@php $counter++; @endphp
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
@endforeach
|
||||
|
||||
@if (!$hasPhotos)
|
||||
<div class="text-center py-6 bg-gray-100 rounded-lg">
|
||||
<p class="text-gray-500 italic">Tidak ada foto yang tersedia</p>
|
||||
@if (!$otherPhotos->isEmpty())
|
||||
<div class="photo-container">
|
||||
<h2 class="text-gray-800 font-bold text-lg">Lainnya</h2>
|
||||
|
||||
@php
|
||||
$groupedBySubcategory = $otherPhotos->groupBy('sub');
|
||||
@endphp
|
||||
|
||||
@if ($groupedBySubcategory->isEmpty())
|
||||
<p class="text-gray-500">Tidak ada subkategori yang tersedia.</p>
|
||||
@else
|
||||
@foreach ($groupedBySubcategory as $subcategory => $subPhotos)
|
||||
@isset($subcategory)
|
||||
<h6 style="font-size:10px">
|
||||
{{ $subcategory ?: '' }}
|
||||
</h6>
|
||||
@endisset
|
||||
|
||||
<div class="photo-row clearfix">
|
||||
@foreach ($subPhotos as $index => $item)
|
||||
@php
|
||||
$imagePath = storage_path('app/public/' . $item['path']);
|
||||
@endphp
|
||||
<div class="photo-item border">
|
||||
<h6 style="text-align: center" >{{ $item['name'] }}</h6>
|
||||
@if ($statusLpj || file_exists($imagePath))
|
||||
<img src="{{ $imagePath }}" alt="{{ $item['path'] }}" class="photo-image">
|
||||
@else
|
||||
<p class="text-gray-400">Foto tidak ditemukan.</p>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
@if (($index + 1) % 2 == 0 && !$loop->last)
|
||||
</div>
|
||||
<div class="photo-row clearfix">
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
@endisset
|
||||
|
||||
@@ -1,264 +1,89 @@
|
||||
@if (isset($formFoto['rute_menuju_lokasi']['rute_menuju_lokasi']))
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Rute Menuju Lokasi
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (isset($formFoto['rute_menuju_lokasi']['rute_menuju_lokasi']))
|
||||
@foreach ($formFoto['rute_menuju_lokasi']['rute_menuju_lokasi'][0] as $index => $item)
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $item['name'] ?? 'Rute menuju lokasi - ' . ($index + 1) }}
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
<img src="{{ Storage::url($item['path']) }}" alt="Gambar {{ $index + 1 }}"
|
||||
class="w-full h-auto object-cover">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@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']))
|
||||
<div class="card">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Rute Lainnya
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (isset($formFoto['foto_rute_lainnya']))
|
||||
@foreach ($formFoto['foto_rute_lainnya'] as $index => $item)
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $item['name_rute_lainnya'] ?? 'Rute Lainnya - ' . ($index + 1) }}
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
<img src="{{ Storage::url($item['foto_rute_lainnya']) }}" alt="Gambar {{ $index + 1 }}"
|
||||
class="w-full h-auto object-cover">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if (isset($formFoto['foto_gerbang']))
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Gerbang
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
@if ($groupedPhotos->isEmpty())
|
||||
<p class="text-gray-500">Tidak ada foto yang tersedia.</p>
|
||||
@else
|
||||
@foreach ($groupedPhotos as $category => $photos)
|
||||
<div class="mt-5">
|
||||
<h2 class="text-gray-800 font-bold text-xl mb-3">{{ $category ?? 'Tanpa Kategori' }}</h2>
|
||||
<div class="grid gap-5">
|
||||
<h2 class=" font-semibold text-xl">
|
||||
Gerbang
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
@php
|
||||
$groupedBySubcategory = $photos->groupBy('sub');
|
||||
@endphp
|
||||
|
||||
@if ($groupedBySubcategory->isEmpty())
|
||||
|
||||
<img src="{{ Storage::url($formFoto['foto_gerbang']) }}" alt="" class="w-full h-auto object-cover">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if (isset($formFoto['foto_lingkungan']['foto_lingkungan']))
|
||||
<div class="card">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Lingkungan </h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (isset($formFoto['foto_lingkungan']['foto_lingkungan']))
|
||||
@foreach ($formFoto['foto_lingkungan']['foto_lingkungan'][0] as $index => $item)
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $item['name'] ?? 'Lingkungan - ' . ($index + 1) }}
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
<img src="{{ Storage::url($item['path']) }}" alt="Gambar {{ $index + 1 }}"
|
||||
class="w-full h-auto object-cover">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if (isset($formFoto['object_jaminan']))
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Object Jaminan
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (isset($formFoto['object_jaminan']))
|
||||
@foreach ($formFoto['object_jaminan'] as $item)
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class=" font-semibold text-xl">
|
||||
{{ $item['name_objek'] ?? "" }}
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
<img src="{{ Storage::url($item['foto_objek']) }}" alt=""
|
||||
class="w-full h-auto object-cover">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if (isset($formFoto['foto_lantai_unit']))
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">Lantai</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (isset($formFoto['foto_lantai_unit']))
|
||||
@foreach ($formFoto['foto_lantai_unit'] as $floorIndex => $floorPhotos)
|
||||
<div class="mt-5">
|
||||
@foreach ($floorPhotos as $index => $item)
|
||||
@if (is_int($index) && isset($item['name'], $item['path']) && is_string($item['path']))
|
||||
<div class="flex items-center justify-between mt-3">
|
||||
<div class="grid gap-3">
|
||||
<h3 class="text-gray-600 font-semibold text-lg">
|
||||
{{ $item['name'] ?? 'Foto Lantai ' . ($floorIndex + 1) . ' - ' . ($index + 1) }}
|
||||
</h3>
|
||||
<div class="flex items-center ">
|
||||
<img src="{{ Storage::url($item['path']) }}"
|
||||
alt="Gambar {{ $floorIndex + 1 }}-{{ $index + 1 }}"
|
||||
class="w-full h-auto object-cover">
|
||||
@foreach ($photos as $index => $item)
|
||||
<div class="flex items-center justify-between">
|
||||
<div class="grid gap-5">
|
||||
<h3 class="text-gray-600 font-semibold text-lg">
|
||||
{{ $item['name'] ?? 'Foto - ' . ($index + 1) }}
|
||||
</h3>
|
||||
<div class="flex items-center">
|
||||
@if (isset($item['path']))
|
||||
<img src="{{ asset('storage/' . $item['path']) }}" alt="Gambar {{ $index + 1 }}"
|
||||
class="w-full h-auto object-cover rounded-md">
|
||||
@else
|
||||
<p class="text-gray-500">Gambar tidak tersedia</p>
|
||||
@endif
|
||||
</div>
|
||||
<p class="text-gray-500 text-sm">{{ $item['description'] ?? '-' }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
@endforeach
|
||||
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
|
||||
|
||||
@if (isset($formFoto['foto_basement']))
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Basement
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class=" font-semibold text-xl">
|
||||
Basemnt
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
|
||||
|
||||
<img src="{{ Storage::url($formFoto['foto_basement']) }}" alt="" class="w-full h-auto object-cover">
|
||||
|
||||
</div>
|
||||
@endforeach
|
||||
@else
|
||||
<!-- Jika ada subkategori, tampilkan berdasarkan subkategori -->
|
||||
@foreach ($groupedBySubcategory as $subcategory => $subPhotos)
|
||||
<div class="mb-4">
|
||||
<!-- Judul Subkategori -->
|
||||
<h4 class="text-gray-700 font-semibold text-lg mb-2">
|
||||
@if ($subcategory)
|
||||
{{ $subcategory }}
|
||||
@endif
|
||||
</h4>
|
||||
<div class="grid gap-5">
|
||||
@foreach ($subPhotos as $index => $item)
|
||||
<div class="flex items-center justify-between">
|
||||
<div class="grid gap-5">
|
||||
<h3 class="text-gray-600 font-semibold text-lg">
|
||||
{{ $item['name'] ?? 'Foto - ' . ($index + 1) }}
|
||||
</h3>
|
||||
<div class="flex items-center">
|
||||
@if (isset($item['path']))
|
||||
<img src="{{ asset('storage/' . $item['path']) }}" alt="Gambar {{ $index + 1 }}"
|
||||
class="w-full h-auto object-cover rounded-md">
|
||||
@else
|
||||
<p class="text-gray-500">Gambar tidak tersedia</p>
|
||||
@endif
|
||||
</div>
|
||||
<p class="text-gray-500 text-sm">{{ $item['description'] ?? '-' }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if (isset($formFoto['foto_lantai_lainnya']))
|
||||
<div class="card">
|
||||
<div class="card-header" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Lantai Lainnya
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if (isset($formFoto['foto_lantai_lainnya']))
|
||||
@foreach ($formFoto['foto_lantai_lainnya'] as $index => $item)
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class="text-gray-600 font-semibold text-xl">
|
||||
{{ $item['name_lantai_lainnya'] ?? 'Lantai - ' . ($index + 1) }}
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
<img src="{{ Storage::url($item['foto_lantai_lainnya']) }}"
|
||||
alt="Gambar {{ $index + 1 }}" class="w-full h-auto object-cover">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
|
||||
|
||||
|
||||
@if (isset($formFoto['pendamping']))
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Pendamping
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
<div class="flex items-center justify-between mt-5">
|
||||
<div class="grid gap-5">
|
||||
<h2 class=" font-semibold text-xl">
|
||||
Pendamping
|
||||
</h2>
|
||||
<div class="flex items-center">
|
||||
|
||||
|
||||
<img src="{{ Storage::url($formFoto['pendamping']) }}" alt="" class="w-full h-auto object-cover">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@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)
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Peta
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="card">
|
||||
<div class="card-header bg-agi-50" id="basic_settings">
|
||||
<h3 class="card-title">
|
||||
Peta
|
||||
</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<div>
|
||||
@if (isset($forminspeksi))
|
||||
@forelse ($fotoTypes as $type)
|
||||
<div class="border photo-item">
|
||||
@php
|
||||
$imagePath = $forminspeksi[$type] ?? null;
|
||||
@endphp
|
||||
<div>
|
||||
@if (isset($forminspeksi))
|
||||
@forelse ($fotoTypes as $type)
|
||||
<div class="border photo-item">
|
||||
@php
|
||||
$imagePath = $forminspeksi[$type] ?? null;
|
||||
@endphp
|
||||
|
||||
@if ($imagePath && file_exists(storage_path('app/public/' . $imagePath)))
|
||||
<img src="{{ Storage::url($imagePath) }}" alt="{{ $type }}"
|
||||
class="w-full h-auto object-cover">
|
||||
@endif
|
||||
<p class="mt-2 text-sm">{{ Str::title(str_replace('_', ' ', $type)) }}</p>
|
||||
</div>
|
||||
@empty
|
||||
<p>Tidak ada tipe foto yang tersedia</p>
|
||||
@endforelse
|
||||
@endif
|
||||
@if ($imagePath && file_exists(storage_path('app/public/' . $imagePath)))
|
||||
<img src="{{ asset('storage/' . $imagePath) }}" alt="{{ $type }}"
|
||||
class="w-full h-auto object-cover">
|
||||
@endif
|
||||
<p class="mt-2 text-sm">{{ Str::title(str_replace('_', ' ', $type)) }}</p>
|
||||
</div>
|
||||
@empty
|
||||
<p>Tidak ada tipe foto yang tersedia</p>
|
||||
@endforelse
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
112
resources/views/penilai/components/header.blade.php
Normal file
112
resources/views/penilai/components/header.blade.php
Normal file
@@ -0,0 +1,112 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Laporan Penilai Jaminan</title>
|
||||
|
||||
<style>
|
||||
* {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 12px;
|
||||
}
|
||||
/** Define the header rules **/
|
||||
@page {
|
||||
margin-top: 100px;
|
||||
margin-bottom: 50px;
|
||||
|
||||
}
|
||||
|
||||
#header {
|
||||
position: fixed;
|
||||
top: -80px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: center;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.header-logo {
|
||||
position: absolute;
|
||||
left: 20px;
|
||||
top: 10px;
|
||||
max-height: 80px;
|
||||
max-width: 150px;
|
||||
}
|
||||
|
||||
.header-title {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#footer {
|
||||
position: fixed;
|
||||
bottom: -50px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: center;
|
||||
border-top: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
font-size: 9px;
|
||||
}
|
||||
|
||||
.page-number:after {
|
||||
content: counter(page) " dari " counter(pages);
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.page-break {
|
||||
page-break-after: always;
|
||||
}
|
||||
|
||||
#footer {
|
||||
position: fixed;
|
||||
bottom: -50px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: left;
|
||||
border-top: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
body {
|
||||
margin-top: 3cm;
|
||||
margin-bottom: 120px;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.border {
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body style="width: 90%; margin: auto;">
|
||||
<header id="header">
|
||||
<table style="width: 100%; border: none;">
|
||||
<tr>
|
||||
<td style="width: 20%; text-align: left;" class="header-left">
|
||||
@include('lpj::component.logo-bag')
|
||||
</td>
|
||||
<td style="text-align: right;">
|
||||
<div style="">
|
||||
<p style="margin: 0; padding:0; font-size:10px;">Tanggal: {{ date('Y-m-d') }}</p>
|
||||
<p style="margin: 0; padding:0; font-size:10px;">Waktu: {{ date('H:i:s') }}</p>
|
||||
<p style="margin: 0; padding:0; font-size:10px;">User: {{ Auth::user()->name }}</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</header>
|
||||
|
||||
@@ -1,216 +1,102 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
@include('lpj::penilai.components.header')
|
||||
@php
|
||||
$data = '';
|
||||
foreach ($permohonan->documents as $dokumen) {
|
||||
$data .= $dokumen->jenisJaminan->name . ', ';
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Laporan Penilai Jaminan</title>
|
||||
$penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first();
|
||||
$surveyor = $permohonan->penilaian->userPenilai->where('role', 'surveyor')->first();
|
||||
$teams = $permohonan->region->teams;
|
||||
|
||||
<style>
|
||||
* {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 10px;
|
||||
}
|
||||
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;
|
||||
|
||||
h2 {
|
||||
font-size: 12px
|
||||
}
|
||||
|
||||
/** Define the header rules **/
|
||||
@page {
|
||||
margin-top: 100px;
|
||||
/* Ruang untuk header */
|
||||
margin-bottom: 50px;
|
||||
/* Ruang untuk footer */
|
||||
}
|
||||
|
||||
#header {
|
||||
position: fixed;
|
||||
top: -100px;
|
||||
/* Posisi header di luar konten */
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 90px;
|
||||
text-align: center;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.header-logo {
|
||||
position: absolute;
|
||||
left: 20px;
|
||||
top: 10px;
|
||||
max-height: 80px;
|
||||
max-width: 150px;
|
||||
}
|
||||
|
||||
.header-title {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#footer {
|
||||
position: fixed;
|
||||
bottom: -50px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: center;
|
||||
border-top: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.page-number:after {
|
||||
content: counter(page) " dari " counter(pages);
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.page-break {
|
||||
page-break-after: always;
|
||||
}
|
||||
|
||||
footer {
|
||||
position: fixed;
|
||||
bottom: 0cm;
|
||||
left: 0cm;
|
||||
right: 0cm;
|
||||
}
|
||||
|
||||
body {
|
||||
margin-top: 3cm;
|
||||
/* Tambahkan margin top sedikit lebih besar dari tinggi header */
|
||||
margin-bottom: 120px;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
/* Pastikan konten berada di bawah header */
|
||||
}
|
||||
|
||||
.border {
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
</head>
|
||||
|
||||
<body style="width: 80%; margin: auto">
|
||||
@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
|
||||
<header id="header">
|
||||
<table style="width: 100%; border: none;">
|
||||
<tr>
|
||||
<td style="width: 20%; text-align: left;" class="header-left">
|
||||
@include('lpj::component.logo-bag')
|
||||
</td>
|
||||
<td style="text-align: right;">
|
||||
<div style="">
|
||||
<p>Tanggal: {{ date('Y-m-d') }}</p>
|
||||
<p>Waktu: {{ date('H:i:s') }}</p>
|
||||
<p>User: {{ Auth::user()->name }}</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</header>
|
||||
}
|
||||
$data = rtrim($data, ', ');
|
||||
@endphp
|
||||
|
||||
<main class="content">
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style="text-align: center; margin-top: 5px;">
|
||||
<h2 style="text-decoration: underline; text-transform: uppercase; text-align: center; margin: 0;">
|
||||
MEMO ANTAR KANTOR</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Kepada</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $memo['kepada'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Dari</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $memo['dari'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">No memo</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $nomorLaporan ?? '-' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Tanggal</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ formatTanggalIndonesia($memo['tanggal']) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Perihal</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $memo['perihal'] ?? '' }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
Menindak lanjuti permintann penilaian jaminan dari {{ $permohonan->user->name }} AO Cabang
|
||||
{{ $permohonan->debiture->branch->name ?? '' }}
|
||||
tanggal {{ formatTanggalIndonesia($memo['tanggal']) ?? '' }}, dapat di sampaikan sebagai berikut:
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<main class="content">
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style="text-align: center; margin-top: 5px;">
|
||||
<h2 style="text-decoration: underline; text-transform: uppercase; text-align: center; margin: 0;">
|
||||
MEMO ANTAR KANTOR</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Kepada</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $memo['kepada'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Dari</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $memo['dari'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">No memo</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $nomorLaporan ?? '-' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Tanggal</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ formatTanggalIndonesia($memo['tanggal']) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Perihal</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $memo['perihal'] ?? '' }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
|
||||
<tr>
|
||||
<td style="">
|
||||
<h6 style="text-transform: uppercase; margin: 0; ">Data Debitur dan Jaminan</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="width: 100%">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
Menindak lanjuti permintann penilaian jaminan dari {{ $permohonan->user->name }} AO Cabang
|
||||
{{ $permohonan->debiture->branch->name ?? '' }}
|
||||
tanggal {{ formatTanggalIndonesia($memo['tanggal']) ?? '' }}, dapat di sampaikan sebagai berikut:
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Nama Calon Debitur</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Jenis Aset</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $data ?? '' }}</td>
|
||||
</tr>
|
||||
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
|
||||
<tr>
|
||||
<td style="">
|
||||
<h6 style="text-transform: uppercase; margin: 0; ">Data Debitur dan Jaminan</h2>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table style="width: 100%">
|
||||
|
||||
@if (@isset($dokumen))
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Nama Calon Debitur</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Jenis Aset</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $data ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
@if (@isset($dokumen))
|
||||
@foreach ($dokumen->detail as $detail)
|
||||
<tr>
|
||||
@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 !== '')
|
||||
<tr>
|
||||
<td style="padding: 2px;">{{ ucwords(str_replace('_', ' ', $key)) ?? '' }}</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style="">{{ $value }}
|
||||
@if ($key == 'luas_bangunan' || $key == 'luas_tanah')
|
||||
<sup>m2</sup>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if (!is_null($value) && $value !== '')
|
||||
<tr>
|
||||
<td style="padding: 2px;">{{ ucwords(str_replace('_', ' ', $key)) ?? '' }}</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style="">{{ $value }}
|
||||
@if ($key == 'luas_bangunan' || $key == 'luas_tanah')
|
||||
<sup>m2</sup>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endif
|
||||
@@ -264,13 +150,13 @@
|
||||
@endif
|
||||
|
||||
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Atas Nama</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Atas Nama</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
@if (!empty($memo['lokasi']['address']))
|
||||
@if (!empty($memo['lokasi']['address']))
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Lokasi Jaminan</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
@@ -278,147 +164,136 @@
|
||||
{{ $alamat['village_code'] ?? '' }} {{ $alamat['district_code'] ?? '' }},
|
||||
{{ $alamat['city_code'] ?? '' }}, {{ $alamat['province_code'] ?? '' }} </td>
|
||||
</tr>
|
||||
@endif
|
||||
</table>
|
||||
@endif
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
|
||||
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
|
||||
<tr>
|
||||
<td style="">
|
||||
<h6 style="text-transform: uppercase; margin: 0; ">HASIL Kunjungan</h6>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Tanggal Kunjungan</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">
|
||||
{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Surveyor</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $surveyor->userPenilaiTeam->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Pihak Pemohon</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->user->name ?? '' }} -
|
||||
{{ $permohonan->debiture->branch->name ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Pihak Cadeb/Debitur</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<table>
|
||||
<tr>
|
||||
@isset($memo['hasil_survey'])
|
||||
@foreach ($memo['hasil_survey'] as $key => $item)
|
||||
<tr>
|
||||
<td style="">
|
||||
<h6 style="text-transform: uppercase; margin: 0; ">HASIL Kunjungan</h6>
|
||||
</td>
|
||||
<td>{{ $item }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
@endforeach
|
||||
@endisset
|
||||
</tr>
|
||||
</table>
|
||||
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
|
||||
<tr>
|
||||
<td style="">
|
||||
<h6 style="text-transform: uppercase; margin: 0; ">KESIMPULAN DAN SARAN</h6>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@isset($memo['kesimpulan_saran'])
|
||||
@foreach ($memo['kesimpulan_saran'] as $key => $item)
|
||||
<tr>
|
||||
<td> {{ $item }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
@endisset
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Tanggal Kunjungan</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">
|
||||
{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Surveyor</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $surveyor->userPenilaiTeam->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Pihak Pemohon</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->user->name ?? '' }} -
|
||||
{{ $permohonan->debiture->branch->name ?? '' }}</td>
|
||||
</tr>
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td>Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<table style="width: 100%; text-align: center;">
|
||||
|
||||
<tr>
|
||||
<td style="width: 20%; padding: 2px;">Pihak Cadeb/Debitur</td>
|
||||
<td style="width: 1%; padding: 2px;">:</td>
|
||||
<td style="width: 79%; padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
<table>
|
||||
<tr>
|
||||
@isset($memo['hasil_survey'])
|
||||
@foreach ($memo['hasil_survey'] as $key => $item)
|
||||
<tr>
|
||||
<td>{{ $item }}</td>
|
||||
<td style="height: 50px"></td>
|
||||
<td style="height: 50px"></td>
|
||||
<td style="height: 50px"></td>
|
||||
<td style="height: 50px"></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
@endisset
|
||||
</tr>
|
||||
</table>
|
||||
<table style="margin: 5px 0; border-collapse: collapse; width: 100%;">
|
||||
<tr>
|
||||
<td style="">
|
||||
<h6 style="text-transform: uppercase; margin: 0; ">KESIMPULAN DAN SARAN</h6>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@isset($memo['kesimpulan_saran'])
|
||||
@foreach ($memo['kesimpulan_saran'] as $key => $item)
|
||||
@php
|
||||
use Modules\Usermanagement\Models\User;
|
||||
@endphp
|
||||
<tr>
|
||||
<td> {{ $item }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
@endisset
|
||||
</tr>
|
||||
</table>
|
||||
<td>{{ $penilai->userPenilaiTeam->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td>Demikian Kami Sampaikan, atas perhatiannya kami ucapkan terimakasih</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<table style="width: 100%; text-align: center;">
|
||||
|
||||
<tr>
|
||||
<td style="height: 50px"></td>
|
||||
<td style="height: 50px"></td>
|
||||
<td style="height: 50px"></td>
|
||||
<td style="height: 50px"></td>
|
||||
</tr>
|
||||
@php
|
||||
use Modules\Usermanagement\Models\User;
|
||||
@endphp
|
||||
<tr>
|
||||
<td>{{ $penilai->userPenilaiTeam->name ?? '' }}</br>
|
||||
{{ ucwords(strtolower('PENILAI')) }}
|
||||
</span>
|
||||
</td>
|
||||
<td>
|
||||
@if ($permohonan->approval_so != null)
|
||||
{{ $senior_officer->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
{{ ucwords(strtolower('SENIOR OFFICER')) }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
@if ($permohonan->approval_eo != null)
|
||||
{{ User::role('EO Appraisal')->first()->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
|
||||
{{ ucwords(strtolower('PENILAI')) }}
|
||||
{{ ucwords(strtolower('EXECUTIVE OFFICER')) }}
|
||||
</span>
|
||||
</td>
|
||||
<td>
|
||||
@if ($permohonan->approval_so != null)
|
||||
{{ $senior_officer->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
{{ ucwords(strtolower('SENIOR OFFICER')) }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
@if ($permohonan->approval_eo != null)
|
||||
{{ User::role('EO Appraisal')->first()->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
@if ($permohonan->approval_dd != null)
|
||||
{{ User::role('DD Appraisal')->first()->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
{{ ucwords(strtolower('DEPUTY DIRECTOR')) }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
{{ ucwords(strtolower('EXECUTIVE OFFICER')) }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
@if ($permohonan->approval_dd != null)
|
||||
{{ User::role('DD Appraisal')->first()->name ?? '' }}</br>
|
||||
<span style=" margin: 0; ">
|
||||
{{ ucwords(strtolower('DEPUTY DIRECTOR')) }}
|
||||
</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="page-break"></div>
|
||||
|
||||
<div class="page-break"></div>
|
||||
|
||||
<div class="section">
|
||||
<div class="judul">
|
||||
<h6 class="border" style="text-align: center">
|
||||
FOTO JAMINAN
|
||||
</h6>
|
||||
</div>
|
||||
@include('lpj::penilai.components.foto-jaminan')
|
||||
<div class="section">
|
||||
<div class="judul">
|
||||
<h6 class="border" style="text-align: center">
|
||||
FOTO JAMINAN
|
||||
</h6>
|
||||
</div>
|
||||
@include('lpj::penilai.components.foto-jaminan')
|
||||
</div>
|
||||
|
||||
</main>
|
||||
|
||||
<footer id="footer">
|
||||
Cabang : {{ $permohonan->debiture->branch->name ?? '' }}
|
||||
</footer>
|
||||
|
||||
<script>
|
||||
const data = @json($memo);
|
||||
console.log(data);
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
</main>
|
||||
@include('lpj::penilai.components.footer')
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,122 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Laporan Penilai Jaminan</title>
|
||||
|
||||
<style>
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
}
|
||||
|
||||
* {
|
||||
font-size: 9px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 14px
|
||||
}
|
||||
|
||||
/** Define the header rules **/
|
||||
@page {
|
||||
margin-top: 120px;
|
||||
/* Ruang untuk header */
|
||||
margin-bottom: 50px;
|
||||
/* Ruang untuk footer */
|
||||
}
|
||||
|
||||
#header {
|
||||
position: fixed;
|
||||
top: -100px;
|
||||
/* Posisi header di luar konten */
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 90px;
|
||||
text-align: center;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.header-logo {
|
||||
position: absolute;
|
||||
left: 20px;
|
||||
top: 10px;
|
||||
max-height: 80px;
|
||||
max-width: 150px;
|
||||
}
|
||||
|
||||
.header-title {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#footer {
|
||||
position: fixed;
|
||||
bottom: -50px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: left;
|
||||
border-top: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.page-number:after {
|
||||
content: counter(page) " dari " counter(pages);
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.page-break {
|
||||
page-break-after: always;
|
||||
}
|
||||
|
||||
footer {
|
||||
position: fixed;
|
||||
bottom: 0cm;
|
||||
left: 0cm;
|
||||
right: 0cm;
|
||||
}
|
||||
|
||||
body {
|
||||
margin-top: 3cm;
|
||||
/* Tambahkan margin top sedikit lebih besar dari tinggi header */
|
||||
margin-bottom: 120px;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
/* Pastikan konten berada di bawah header */
|
||||
}
|
||||
|
||||
.border {
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.photo-item {
|
||||
text-align: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.photo-image {
|
||||
max-width: 80%;
|
||||
height: auto;
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
/* border: 1px solid #000; */
|
||||
/* border-collapse: collapse; */
|
||||
}
|
||||
</style>
|
||||
|
||||
</head>
|
||||
|
||||
<body style="width: 80%; margin: auto">
|
||||
@include('lpj::penilai.components.header')
|
||||
@php
|
||||
$data = '';
|
||||
foreach ($permohonan->documents as $dokumen) {
|
||||
@@ -124,20 +6,6 @@
|
||||
}
|
||||
$data = rtrim($data, ', ');
|
||||
@endphp
|
||||
<header id="header">
|
||||
<table style="width: 100%; border: none;">
|
||||
<tr>
|
||||
<td style="width: 20%; text-align: left;" class="header-left">
|
||||
@include('lpj::component.logo-bag')
|
||||
</td>
|
||||
<td style="width: 80%; text-align: center; border: 1px solid black; ">
|
||||
<h3 style="width:100% padding-top: 40px; text-align: center;text-transform: uppercase;">LAPORAN
|
||||
PENILAIAN ATAS {{ $data }}
|
||||
</h3>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</header>
|
||||
|
||||
<main class="content">
|
||||
<table style="width: 100%">
|
||||
@@ -145,48 +13,48 @@
|
||||
<td style="vertical-align: top;">
|
||||
<table style="width: 100%; border-collapse: collapse;">
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Nama Debitur</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Nama Debitur</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Alamat dan Telpon</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ $permohonan->debiture->address ?? '' }} {{ $permohonan->debiture->phone ?? '' }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px;">Permintaan Cabang</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $permohonan->debiture->branch->name ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Permintaan Cabang</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $permohonan->debiture->branch->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Permintaan (AO)</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $permohonan->user->name }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Permintaan (AO)</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $permohonan->user->name }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">No Order</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $permohonan->nomor_registrasi ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">No Order</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $permohonan->nomor_registrasi ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Tanggal Order</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ formatTanggalIndonesia($permohonan->created_at) }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Tanggal Order</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ formatTanggalIndonesia($permohonan->created_at) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Tanggal Survey</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Tanggal Survey</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ formatTanggalIndonesia($permohonan->penilaian->tanggal_kunjungan) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">User</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $permohonan->user->name ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">User</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $permohonan->user->name ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -220,29 +88,29 @@
|
||||
@endphp
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px;">Pemeriksa</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $senior_officer->name ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Pemeriksa</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $senior_officer->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Menyetujui</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $senior_officer->name ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Menyetujui</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $senior_officer->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">No Laporan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $nomorLaporan ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">No Laporan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $nomorLaporan ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Tanggal Laporan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ formatTanggalIndonesia($tanggalLaporan) ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Tanggal Laporan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ formatTanggalIndonesia($tanggalLaporan) ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Waktu Penyelesaian</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Waktu Penyelesaian</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ hitungHariKerja($permohonan->penilaian->tanggal_kunjungan, $tanggalLaporan) }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -250,56 +118,56 @@
|
||||
<td>
|
||||
<table style="width: 100%; border-collapse: collapse;">
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Fasilitas Kredit</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $permohonan->jenisFasilitasKredit->name ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Fasilitas Kredit</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $permohonan->jenisFasilitasKredit->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td style=" padding: 2px;">Jenis Jaminan</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $data ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Jenis Jaminan</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $data ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Tujuan Penilaian</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $permohonan->tujuanPenilaian->name ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Tujuan Penilaian</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $permohonan->tujuanPenilaian->name ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Terletak di</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $alamat['address'] ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Terletak di</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $alamat['address'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Kelurahan</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $alamat['village_code'] ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Kelurahan</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $alamat['village_code'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Kecamatan</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $alamat['district_code'] ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Kecamatan</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $alamat['district_code'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Kabupaten</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $alamat['city_code'] ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Kabupaten</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $alamat['city_code'] ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Propinsi</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $alamat['province_code'] ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Propinsi</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $alamat['province_code'] ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
@if (@isset($dokumen))
|
||||
@foreach ($dokumen->detail as $detail)
|
||||
<tr>
|
||||
@if (isset($detail->dokumen_jaminan))
|
||||
<td style=" padding: 2px;">
|
||||
<td style=" padding: 2px; vertical-align: top;">
|
||||
{{ $detail->name ?? '' }}
|
||||
</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">
|
||||
@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 !== '')
|
||||
<td style=" padding: 2px;">
|
||||
<td style=" padding: 2px; vertical-align: top;">
|
||||
{{ ucwords(str_replace('_', ' ', $key)) ?? '' }}</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $value }}
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $value }}
|
||||
@if ($key == 'luas_bangunan' || $key == 'luas_tanah')
|
||||
<sup>m2</sup>
|
||||
@endif
|
||||
@@ -347,14 +215,14 @@
|
||||
|
||||
@if (isset($forminspeksi['asset']['nomor_nib']))
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Nomor NIB</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $forminspeksi['asset']['nomor_nib'] ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Nomor NIB</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $forminspeksi['asset']['nomor_nib'] ?? '' }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
<tr>
|
||||
<td style=" padding: 2px;">Atas Nama</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Atas Nama</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px;">{{ $permohonan->debiture->name ?? '' }}</td>
|
||||
</tr>
|
||||
|
||||
@@ -388,9 +256,9 @@
|
||||
? $forminspeksi['asset']['hub_cadeb']['tidak sesuai']
|
||||
: $forminspeksi['asset']['hub_cadeb']['sesuai'];
|
||||
@endphp
|
||||
<td style=" padding: 2px;">Hubungan Pemilik Jaminan dengan Debitu</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $hubCadeb ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Hubungan Pemilik Jaminan dengan Debitu</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $hubCadeb ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@php
|
||||
@@ -405,9 +273,9 @@
|
||||
? $forminspeksi['asset']['hub_cadeb_penghuni']['tidak sesuai']
|
||||
: $forminspeksi['asset']['hub_cadeb_penghuni']['sesuai'];
|
||||
@endphp
|
||||
<td style=" padding: 2px;">Hubungan Penghuni Jaminan dengan Debitur</td>
|
||||
<td style=" padding: 2px;">:</td>
|
||||
<td style=" padding: 2px;">{{ $hubCadeb ?? '' }}</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">Hubungan Penghuni Jaminan dengan Debitur</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">:</td>
|
||||
<td style=" padding: 2px; vertical-align: top;">{{ $hubCadeb ?? '' }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -444,14 +312,14 @@
|
||||
|
||||
$luas = $forminspeksi['tanah']['luas_tanah'][$cekLuas] ?? null;
|
||||
@endphp
|
||||
<td style="padding: 2px;">Luas Tanah</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $luas ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Luas Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $luas ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Bentuk Tanah</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Bentuk Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukTanah = isset(
|
||||
$forminspeksi['tanah']['bentuk_tanah']['bentuk_tanah'],
|
||||
@@ -474,9 +342,9 @@
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Kontur Tanah</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Kontur Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$konturTanah = $forminspeksi['tanah']['kontur_tanah'] ?? [];
|
||||
@endphp
|
||||
@@ -489,9 +357,9 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Permukaan dengan Jalan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Permukaan dengan Jalan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$ketinggianTanah = $forminspeksi['tanah']['ketinggian_tanah'];
|
||||
$ketinggian = $ketinggianTanah['ketinggian'][0] ?? '-';
|
||||
@@ -509,14 +377,14 @@
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Peruntukan Tanah</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">Perumahan bukan Real Estate</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Peruntukan Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Perumahan bukan Real Estate</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Fisik Tanah</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Fisik Tanah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$kondisiFisikTanah =
|
||||
$forminspeksi['tanah']['kondisi_fisik_tanah'][
|
||||
@@ -534,9 +402,9 @@
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Luas Bangunan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Luas Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$luasTanahBangunan =
|
||||
$forminspeksi['bangunan']['luas_tanah_bagunan'];
|
||||
@@ -553,9 +421,9 @@
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Jenis Bangunan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Jenis Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$jenisBangunan =
|
||||
$forminspeksi['bangunan']['jenis_bangunan'] ?? [];
|
||||
@@ -569,9 +437,9 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Kondisi Bangunan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$kondisiBangunan =
|
||||
$forminspeksi['bangunan']['kondisi_bangunan'] ?? [];
|
||||
@@ -585,10 +453,10 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Sifat Bangunan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Sifat Bangunan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$sifatBangunan =
|
||||
$forminspeksi['bangunan']['sifat_bangunan'][0] ?? '-';
|
||||
@@ -628,7 +496,7 @@
|
||||
@if (count($spesifikasiBangunan) > 1)
|
||||
<tr>
|
||||
<td colspan="3"
|
||||
style="padding: 2px; font-weight: bold;">
|
||||
style="padding: 2px; vertical-align: top; font-weight: bold;">
|
||||
{{ $bangunan['bagunan'] ?? 'Bangunan ' . ($index + 1) }}
|
||||
</td>
|
||||
</tr>
|
||||
@@ -637,9 +505,9 @@
|
||||
@foreach ($spekKategori as $kategori => $nilaiKategori)
|
||||
@if (!empty($nilaiKategori))
|
||||
<tr>
|
||||
<td style="padding: 2px;">{{ $kategori }}</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $kategori }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $nilaiKategori) }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
@@ -647,7 +515,7 @@
|
||||
@endforeach
|
||||
@else
|
||||
<tr>
|
||||
<td colspan="3" style="padding: 2px;">Tidak ada data
|
||||
<td colspan="3" style="padding: 2px; vertical-align: top;">Tidak ada data
|
||||
spesifikasi bangunan</td>
|
||||
</tr>
|
||||
@endif
|
||||
@@ -662,14 +530,14 @@
|
||||
|
||||
$luas = $forminspeksi['luas_unit'][$cekLuas] ?? null;
|
||||
@endphp
|
||||
<td style="padding: 2px;">Luas Unit</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $luas ?? '' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Luas Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $luas ?? '' }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Bentuk Unit</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Bentuk Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['bentuk_unit'] ?? [];
|
||||
@endphp
|
||||
@@ -682,9 +550,9 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Kondisi Unit</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['kondisi_unit'] ?? [];
|
||||
@endphp
|
||||
@@ -697,9 +565,9 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Posisi Unit</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Posisi Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['posisi_unit'] ?? [];
|
||||
@endphp
|
||||
@@ -712,9 +580,9 @@
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">View Unit</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">View Unit</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@php
|
||||
$bentukUnit = $forminspeksi['view'] ?? [];
|
||||
@endphp
|
||||
@@ -743,76 +611,76 @@
|
||||
@endphp
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px;">Jarak Jalan Utama</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $lingkungan['jarak_jalan_utama'] ?? '-' }} m</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Jarak Jalan Utama</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['jarak_jalan_utama'] ?? '-' }} m</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Jalan Lingkungan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $lingkungan['jalan_linkungan'] ?? '-' }} m</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Jalan Lingkungan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['jalan_linkungan'] ?? '-' }} m</td>
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px;">Jarak CBD</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $lingkungan['jarak_cbd_point'] ?? '-' }} m
|
||||
<td style="padding: 2px; vertical-align: top;">Jarak CBD</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['jarak_cbd_point'] ?? '-' }} m
|
||||
({{ $lingkungan['nama_cbd_point'] ?? '-' }})</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Lebar Perkerasan Jalan</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $lingkungan['lebar_perkerasan_jalan'] ?? '-' }} m</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Lebar Perkerasan Jalan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['lebar_perkerasan_jalan'] ?? '-' }} m</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Perkerasan Jalan</td>
|
||||
<td style="padding: 2px;">:
|
||||
<td style="padding: 2px; vertical-align: top;">Perkerasan Jalan</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:
|
||||
</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $lingkungan['perkerasan_jalan']['perkerasan_jalan'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px;">Lalu Lintas</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ implode(', ', $lingkungan['lalu_lintas'] ?? ['-']) }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Lalu Lintas</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ implode(', ', $lingkungan['lalu_lintas'] ?? ['-']) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Golongan Masyarakat Sekitar</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ implode(', ', $lingkungan['gol_mas_sekitar'] ?? ['-']) }}
|
||||
<td style="padding: 2px; vertical-align: top;">Golongan Masyarakat Sekitar</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ implode(', ', $lingkungan['gol_mas_sekitar'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Tingkat Keramaian</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ implode(', ', $lingkungan['tingkat_keramaian'] ?? ['-']) }}
|
||||
<td style="padding: 2px; vertical-align: top;">Tingkat Keramaian</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ implode(', ', $lingkungan['tingkat_keramaian'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Terletak di Area</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Terletak di Area</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
{{ implode(', ', $lingkungan['terletak_diarea']['terletak_diarea'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Kondisi Bangunan Sekitar</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $lingkungan['kondisi_bagunan_disekitar_lokasi'] ?? '-' }}
|
||||
<td style="padding: 2px; vertical-align: top;">Kondisi Bangunan Sekitar</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['kondisi_bagunan_disekitar_lokasi'] ?? '-' }}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="padding: 2px;">Sifat Bangunan Sekitar</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ $lingkungan['sifat_bagunan_disekitar_lokasi'] ?? '-' }}</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Sifat Bangunan Sekitar</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ $lingkungan['sifat_bagunan_disekitar_lokasi'] ?? '-' }}</td>
|
||||
</tr>
|
||||
|
||||
@if ($lingkungan['dekat_makam'] == 'ya')
|
||||
<tr>
|
||||
<td style="padding: 2px;">Dekat Makam</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">Ya, Jarak {{ $lingkungan['jarak_makam'] ?? '-' }} m
|
||||
<td style="padding: 2px; vertical-align: top;">Dekat Makam</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Ya, Jarak {{ $lingkungan['jarak_makam'] ?? '-' }} m
|
||||
({{ $lingkungan['nama_makam'] ?? '-' }})
|
||||
</td>
|
||||
</tr>
|
||||
@@ -820,25 +688,25 @@
|
||||
|
||||
@if ($lingkungan['dekat_tps'] == 'ya')
|
||||
<tr>
|
||||
<td style="padding: 2px;">Dekat TPS</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">Ya, Jarak {{ $lingkungan['jarak_tps'] ?? '-' }} m
|
||||
<td style="padding: 2px; vertical-align: top;">Dekat TPS</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">Ya, Jarak {{ $lingkungan['jarak_tps'] ?? '-' }} m
|
||||
({{ $lingkungan['nama_tps'] ?? '-' }})</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
<tr>
|
||||
<td style="padding: 2px;">Daerah</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">{{ implode(', ', $lingkungan['merupakan_daerah'] ?? ['-']) }}
|
||||
<td style="padding: 2px; vertical-align: top;">Daerah</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">{{ implode(', ', $lingkungan['merupakan_daerah'] ?? ['-']) }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@if (!empty($fasilitas))
|
||||
<tr>
|
||||
<td style="padding: 2px;">Fasilitas Dekat Objek</td>
|
||||
<td style="padding: 2px;">:</td>
|
||||
<td style="padding: 2px;">
|
||||
<td style="padding: 2px; vertical-align: top;">Fasilitas Dekat Objek</td>
|
||||
<td style="padding: 2px; vertical-align: top;">:</td>
|
||||
<td style="padding: 2px; vertical-align: top;">
|
||||
@foreach ($fasilitas as $fas)
|
||||
{{ $fas }}
|
||||
@if (isset($fasilitasInput[$fas]))
|
||||
@@ -1351,16 +1219,4 @@
|
||||
</div>
|
||||
|
||||
</main>
|
||||
<footer id="footer">
|
||||
Cabang : {{ $permohonan->debiture->branch->name ?? '' }}
|
||||
</footer>
|
||||
|
||||
<script>
|
||||
const datas = @json($forminspeksi);
|
||||
console.log(datas);
|
||||
const lpjData = @json($dataPembanding);
|
||||
console.log(lpjData);
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@include('lpj::penilai.components.footer')
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,112 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Laporan Penilai Jaminan</title>
|
||||
<style>
|
||||
* {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 14px
|
||||
}
|
||||
|
||||
/** Define the header rules **/
|
||||
@page {
|
||||
margin-top: 100px;
|
||||
/* Ruang untuk header */
|
||||
margin-bottom: 30px;
|
||||
/* Ruang untuk footer */
|
||||
}
|
||||
|
||||
#header {
|
||||
position: fixed;
|
||||
top: -100px;
|
||||
/* Posisi header di luar konten */
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: center;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.header-logo {
|
||||
position: absolute;
|
||||
left: 20px;
|
||||
top: 10px;
|
||||
max-height: 80px;
|
||||
max-width: 150px;
|
||||
}
|
||||
|
||||
.header-title {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#footer {
|
||||
position: fixed;
|
||||
bottom: -50px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 50px;
|
||||
text-align: center;
|
||||
border-top: 1px solid #ddd;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.page-number:after {
|
||||
content: counter(page) " dari " counter(pages);
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.page-break {
|
||||
page-break-after: always;
|
||||
}
|
||||
|
||||
footer {
|
||||
position: fixed;
|
||||
bottom: 0cm;
|
||||
left: 0cm;
|
||||
right: 0cm;
|
||||
}
|
||||
|
||||
body {
|
||||
margin-top: 3cm;
|
||||
/* Tambahkan margin top sedikit lebih besar dari tinggi header */
|
||||
margin-bottom: 120px;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
/* Pastikan konten berada di bawah header */
|
||||
}
|
||||
|
||||
.border {
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.photo-item {
|
||||
text-align: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.photo-image {
|
||||
max-width: 80%;
|
||||
height: auto;
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
}
|
||||
</style>
|
||||
|
||||
</head>
|
||||
|
||||
<body style="width: 80%; margin: auto">
|
||||
@include('lpj::penilai.components.header')
|
||||
@php
|
||||
$data = '';
|
||||
foreach ($permohonan->documents as $dokumen) {
|
||||
@@ -135,22 +27,6 @@
|
||||
}
|
||||
$data = rtrim($data, ', ');
|
||||
@endphp
|
||||
<header id="header">
|
||||
<table style="width: 100%; border: none;">
|
||||
<tr>
|
||||
<td style="width: 20%; text-align: left;" class="header-left">
|
||||
@include('lpj::component.logo-bag')
|
||||
</td>
|
||||
<td style="text-align: right;">
|
||||
<div style="">
|
||||
<p>Tanggal: {{ date('Y-m-d') }}</p>
|
||||
<p>Waktu: {{ date('H:i:s') }}</p>
|
||||
<p>User: {{ Auth::user()->name }}</p>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</header>
|
||||
|
||||
<main class="content">
|
||||
<table style="width: 100%">
|
||||
@@ -494,9 +370,4 @@
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<footer id="footer">
|
||||
Cabang : {{ $permohonan->debiture->branch->name ?? '' }}
|
||||
</footer>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@include('lpj::penilai.components.footer')
|
||||
@@ -21,6 +21,7 @@
|
||||
<input type="hidden" name="permohonan_id" value="{{ $permohonan->id }}">
|
||||
<input type="hidden" name="type" value="tanah">
|
||||
<input type="hidden" name="dokument_id" value="{{ request('dokument') }}">
|
||||
<input type="hidden" name="nomor_registrasi" value="{{ $permohonan->nomor_registrasi }}">
|
||||
<div class="card">
|
||||
@foreach ($permohonan->documents as $dokumen)
|
||||
@if ($dokumen->jenisJaminan)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -67,6 +67,8 @@
|
||||
<i class="ki-filled ki-save-2"></i>
|
||||
<span id="saveButtonText">Save</span>
|
||||
</button>
|
||||
<a href="{{ route('surveyor.print_out_inspeksi', ['permohonan_id' => $permohonan->id, 'dokument_id' => request('dokument'), 'jenis_jaminan_id' => request('jenis_jaminan')]) }}"
|
||||
class="btn btn-info" id="saveButton">
|
||||
<a href="{{ route('surveyor.print_out_inspeksi', ['permohonan_id' => $permohonan->id, 'dokument_id' => request('dokument'), 'jenis_jaminan_id' => request('jenis_jaminan')]) }}"
|
||||
class="btn btn-info" id="saveButton">
|
||||
<i class="ki-filled ki-printer"></i>
|
||||
|
||||
@@ -35,10 +35,23 @@
|
||||
<td class="px-4 py-2">Foto</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="flex flex-col gap-2">
|
||||
<img id="uploadedImage1"
|
||||
src="{{ isset($fotoForm['object_jaminan'][0]['foto_objek']) ? asset('storage/' . $fotoForm['object_jaminan'][0]['foto_objek']) : '' }}"
|
||||
class="max-w-[200px] {{ isset($fotoForm['object_jaminan'][0]['foto_objek']) ? '' : 'hidden' }}"
|
||||
alt="Uploaded Image">
|
||||
@php
|
||||
$photos = $fotoForm['upload_foto'] ?? [];
|
||||
if (!is_array($photos)) {
|
||||
$photos = [];
|
||||
}
|
||||
|
||||
$groupedPhotos = collect($photos)->groupBy('category');
|
||||
$mainPhoto = $groupedPhotos->get('Tampak Depan', collect())->first();
|
||||
|
||||
// echo $mainPhoto;
|
||||
@endphp
|
||||
|
||||
@if ($mainPhoto)
|
||||
<img id="uploadedImage1" src="{{ asset('storage/' . $mainPhoto['path']) }}"
|
||||
class="max-w-[200px]" alt="Uploaded Image">
|
||||
@endif
|
||||
|
||||
<input type="file" name="foto_objek" class="file-input" accept="image/*"
|
||||
onchange="previewImage(this, 'uploadedImage1')">
|
||||
</div>
|
||||
|
||||
@@ -1,467 +1,444 @@
|
||||
|
||||
<div class="card-header bg-agi-50">
|
||||
<h3 class="card-title">Data Pembanding</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('surveyor.show', ['id' => $permohonan->id]) }}"
|
||||
class="btn btn-xs btn-info">
|
||||
<i class="ki-filled ki-exit-left"></i> Kembali
|
||||
</a>
|
||||
</div>
|
||||
<div class="card-header bg-agi-50">
|
||||
<h3 class="card-title">Data Pembanding</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
<a href="{{ route('surveyor.show', ['id' => $permohonan->id]) }}" class="btn btn-xs btn-info">
|
||||
<i class="ki-filled ki-exit-left"></i> Kembali
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-header bg-agi-50 py-5 flex-wrap flex justify-end">
|
||||
<button type="button" id="addColumnBtn" class="btn btn-primary btn-sm">
|
||||
<i class="ki-filled ki-plus"></i> Tambah Pembanding
|
||||
</button>
|
||||
<button type="button" id="removeColumnBtn" class="btn btn-danger btn-sm ml-2"
|
||||
style="display: none;">
|
||||
<i class="ki-filled ki-minus"></i> Hapus Pembanding
|
||||
</button>
|
||||
</div>
|
||||
<div class="card-header bg-agi-50 py-5 flex-wrap flex justify-end">
|
||||
<button type="button" id="addColumnBtn" class="btn btn-primary btn-sm">
|
||||
<i class="ki-filled ki-plus"></i> Tambah Pembanding
|
||||
</button>
|
||||
<button type="button" id="removeColumnBtn" class="btn btn-danger btn-sm ml-2" style="display: none;">
|
||||
<i class="ki-filled ki-minus"></i> Hapus Pembanding
|
||||
</button>
|
||||
</div>
|
||||
|
||||
{{-- @php
|
||||
{{-- @php
|
||||
print_r($inspectionData);
|
||||
@endphp --}}
|
||||
|
||||
<div class="card-body">
|
||||
<div class="scrollable-x-auto">
|
||||
<table id="dataTable"
|
||||
class="table table-auto table-border align-middle text-gray-700 font-medium text-sm">
|
||||
<thead class="bg-gray-50 sticky top-0">
|
||||
<tr>
|
||||
<th class="px-4 py-3 min-w-[200px]">Parameter</th>
|
||||
<th class="px-4 py-3 min-w-[250px]">Objek Penilaian</th>
|
||||
<th class="px-4 py-3 min-w-[250px]">Data Pembanding 1</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- Informasi Dasar -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Informasi Dasar</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Foto</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="flex flex-col gap-2">
|
||||
<img id="uploadedImage1"
|
||||
src="{{ isset($fotoForm['object_jaminan'][0]['foto_objek']) ? asset('storage/' . $fotoForm['object_jaminan'][0]['foto_objek']) : '' }}"
|
||||
class="max-w-[200px] {{ isset($fotoForm['object_jaminan'][0]['foto_objek']) ? '' : 'hidden' }}"
|
||||
alt="Uploaded Image">
|
||||
<input type="file" name="foto_objek" class="file-input"
|
||||
accept="image/*" onchange="previewImage(this, 'uploadedImage1')">
|
||||
</div>
|
||||
</td>
|
||||
<div class="card-body">
|
||||
<div class="scrollable-x-auto">
|
||||
<table id="dataTable" class="table table-auto table-border align-middle text-gray-700 font-medium text-sm">
|
||||
<thead class="bg-gray-50 sticky top-0">
|
||||
<tr>
|
||||
<th class="px-4 py-3 min-w-[200px]">Parameter</th>
|
||||
<th class="px-4 py-3 min-w-[250px]">Objek Penilaian</th>
|
||||
<th class="px-4 py-3 min-w-[250px]">Data Pembanding 1</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- Informasi Dasar -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Informasi Dasar</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Foto</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="flex flex-col gap-2">
|
||||
|
||||
<td class="px-4 py-2">
|
||||
<div class="flex flex-col gap-2">
|
||||
<img id="uploadedImage2" class="max-w-[200px] hidden"
|
||||
alt="Pembanding Image">
|
||||
<input type="file" name="foto_objek_pembanding[]" class="file-input"
|
||||
accept="image/*" onchange="previewImage(this, 'uploadedImage2')">
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<!-- Data Properti -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Data Properti</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Jenis Aset</td>
|
||||
<td class="px-4 py-2">
|
||||
<select name="jenis_aset" class="select">
|
||||
<option value="">Pilih Jenis Aset</option>
|
||||
@foreach ($data['jenisJaminan'] as $item)
|
||||
<option value="{{ $item->name }}"
|
||||
{{ ($inspectionData['asset']['jenis_asset']['sesuai'] ?? '') == $item->name ? 'selected' : '' }}>
|
||||
{{ $item->name }}</option>
|
||||
@endforeach
|
||||
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select name="jenis_aset_pembanding[]" class="select">
|
||||
<option value="">Pilih Jenis Aset</option>
|
||||
@foreach ($data['jenisJaminan'] as $item)
|
||||
<option value="{{ $item->name }}"
|
||||
{{ ($inspectionData['jenis_aset'] ?? '') == $item->name ? 'selected' : '' }}>
|
||||
{{ $item->name }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Luas Tanah (m²)</td>
|
||||
@php
|
||||
$cekLuas =
|
||||
isset($inspectionData['tanah']['luas_tanah']) == 'sesuai'
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$photos = $fotoForm['upload_foto'] ?? [];
|
||||
if (!is_array($photos)) {
|
||||
$photos = [];
|
||||
}
|
||||
|
||||
$groupedPhotos = collect($photos)->groupBy('category');
|
||||
$mainPhoto = $groupedPhotos->get('Tampak Depan', collect())->first();
|
||||
|
||||
// echo $mainPhoto;
|
||||
|
||||
@endphp
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="luas_tanah" class="input "
|
||||
value="{{ $inspectionData['tanah']['luas_tanah']['sesuai'] ?? ($inspectionData['tanah']['luas_tanah']['tidak sesuai'] ?? '') }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
|
||||
<input type="text" name="luas_tanah_pembanding[]"
|
||||
class="input number-format">
|
||||
</td>
|
||||
</tr>
|
||||
@if ($mainPhoto)
|
||||
<img id="uploadedImage1" src="{{ asset('storage/' . $mainPhoto['path']) }}"
|
||||
class="max-w-[200px]" alt="Uploaded Image">
|
||||
@endif
|
||||
<input type="hidden" name="name_foto_objek" class="input"
|
||||
value="{{ $mainPhoto['path'] ?? '' }}">
|
||||
<input type="file" name="foto_objek" class="file-input" accept="image/*"
|
||||
onchange="previewImage(this, 'uploadedImage1')">
|
||||
|
||||
@php
|
||||
$luasTanahData = [];
|
||||
$nilai = 'N/A';
|
||||
</div>
|
||||
</td>
|
||||
|
||||
// Memeriksa apakah key 'bangunan' ada di dalam $inspectionData
|
||||
if (isset($inspectionData['bangunan']['luas_tanah_bagunan'])) {
|
||||
$luasTanahData = $inspectionData['bangunan']['luas_tanah_bagunan'];
|
||||
<td class="px-4 py-2">
|
||||
<div class="flex flex-col gap-2">
|
||||
<img id="uploadedImage2" class="max-w-[200px] hidden" alt="Pembanding Image">
|
||||
<input type="file" name="foto_objek_pembanding[]" class="file-input" accept="image/*"
|
||||
onchange="previewImage(this, 'uploadedImage2')">
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<!-- Data Properti -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Data Properti</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Jenis Aset</td>
|
||||
<td class="px-4 py-2">
|
||||
<select name="jenis_aset" class="select">
|
||||
<option value="">Pilih Jenis Aset</option>
|
||||
@foreach ($data['jenisJaminan'] as $item)
|
||||
<option value="{{ $item->name }}"
|
||||
{{ ($inspectionData['asset']['jenis_asset']['sesuai'] ?? '') == $item->name ? 'selected' : '' }}>
|
||||
{{ $item->name }}</option>
|
||||
@endforeach
|
||||
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select name="jenis_aset_pembanding[]" class="select">
|
||||
<option value="">Pilih Jenis Aset</option>
|
||||
@foreach ($data['jenisJaminan'] as $item)
|
||||
<option value="{{ $item->name }}"
|
||||
{{ ($inspectionData['jenis_aset'] ?? '') == $item->name ? 'selected' : '' }}>
|
||||
{{ $item->name }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Luas Tanah (m²)</td>
|
||||
@php
|
||||
$cekLuas =
|
||||
isset($inspectionData['tanah']['luas_tanah']) == 'sesuai' ? 'sesuai' : 'tidak sesuai';
|
||||
|
||||
if (!empty($luasTanahData['sesuai'])) {
|
||||
$nilai = $luasTanahData['sesuai'];
|
||||
} elseif (!empty($luasTanahData['tidak sesuai'])) {
|
||||
$nilai = $luasTanahData['tidak sesuai'];
|
||||
}
|
||||
}
|
||||
@endphp
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="luas_tanah" class="input "
|
||||
value="{{ $inspectionData['tanah']['luas_tanah']['sesuai'] ?? ($inspectionData['tanah']['luas_tanah']['tidak sesuai'] ?? '') }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
|
||||
@if (isset($inspectionData['bangunan']))
|
||||
<input type="text" name="luas_tanah_pembanding[]" class="input number-format">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@php
|
||||
$luasTanahData = [];
|
||||
$nilai = 'N/A';
|
||||
|
||||
// Memeriksa apakah key 'bangunan' ada di dalam $inspectionData
|
||||
if (isset($inspectionData['bangunan']['luas_tanah_bagunan'])) {
|
||||
$luasTanahData = $inspectionData['bangunan']['luas_tanah_bagunan'];
|
||||
|
||||
if (!empty($luasTanahData['sesuai'])) {
|
||||
$nilai = $luasTanahData['sesuai'];
|
||||
} elseif (!empty($luasTanahData['tidak sesuai'])) {
|
||||
$nilai = $luasTanahData['tidak sesuai'];
|
||||
}
|
||||
}
|
||||
@endphp
|
||||
|
||||
@if (isset($inspectionData['bangunan']))
|
||||
<tr>
|
||||
<td class="px-4 py-2">Luas Bangunan (m²)</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text"
|
||||
name="luas_tanah_bagunan"
|
||||
class="input"
|
||||
value="{{ $inspectionData['bangunan']['luas_tanah_bagunan']['sesuai'] ?? ($inspectionData['bangunan']['luas_tanah_bagunan']['tidak sesuai'] ?? '') }}">
|
||||
<input type="text" name="luas_tanah_bagunan" class="input"
|
||||
value="{{ $inspectionData['bangunan']['luas_tanah_bagunan']['sesuai'] ?? ($inspectionData['bangunan']['luas_tanah_bagunan']['tidak sesuai'] ?? '') }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="luas_bangunan_pembanding[]"
|
||||
class="input number-format">
|
||||
<input type="text" name="luas_bangunan_pembanding[]" class="input number-format">
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@endif
|
||||
|
||||
|
||||
<!-- Informasi Harga -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Informasi</td>
|
||||
</tr>
|
||||
<!-- Informasi Harga -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Informasi</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Hak atas properti yang dialihkan</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="hak_properti" class="input"
|
||||
value="{{ $inspectionData['asset']['hak_properti'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="hak_properti_pembanding[]"
|
||||
class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Penawaran/ Transaksi</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="penawaran" class="input"
|
||||
value="{{ $inspectionData['asset']['penawaran'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="penawaran_pembanding[]"
|
||||
class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Hak atas properti yang dialihkan</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="hak_properti" class="input"
|
||||
value="{{ $inspectionData['asset']['hak_properti'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="hak_properti_pembanding[]" class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Penawaran/ Transaksi</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="penawaran" class="input"
|
||||
value="{{ $inspectionData['asset']['penawaran'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="penawaran_pembanding[]" class="input">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Telepon Contact Person</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="telepon" class="input"
|
||||
value="{{ $inspectionData['asset']['telepon'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="telepon_pembanding[]"
|
||||
class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Telepon Contact Person</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="telepon" class="input"
|
||||
value="{{ $inspectionData['asset']['telepon'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="telepon_pembanding[]" class="input">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Status Narasumber</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="status_nara_sumber" class="input"
|
||||
value="{{ $inspectionData['asset']['status_nara_sumber'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="status_nara_sumber_pembanding[]"
|
||||
class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Nama Narasumber</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="nama_nara_sumber" class="input"
|
||||
value="{{ $inspectionData['asset']['nama_nara_sumber'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="nama_nara_sumber_pembanding[]"
|
||||
class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Status Narasumber</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="status_nara_sumber" class="input"
|
||||
value="{{ $inspectionData['asset']['status_nara_sumber'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="status_nara_sumber_pembanding[]" class="input">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Nama Narasumber</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="nama_nara_sumber" class="input"
|
||||
value="{{ $inspectionData['asset']['nama_nara_sumber'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="nama_nara_sumber_pembanding[]" class="input">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
<!-- Lokasi -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Lokasi</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Koordinat</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
<input type="text" name="kordinat_lat" class="input"
|
||||
placeholder="Latitude"
|
||||
value="{{ $inspectionData['asset']['kordinat_lat'] ?? '' }}">
|
||||
<input type="text" name="kordinat_lng" class="input"
|
||||
placeholder="Longitude"
|
||||
value="{{ $inspectionData['asset']['kordinat_lng'] ?? '' }}">
|
||||
</div>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
<input type="text" name="kordinat_lat_pembanding[]" class="input"
|
||||
placeholder="Latitude">
|
||||
<input type="text" name="kordinat_lng_pembanding[]" class="input"
|
||||
placeholder="Longitude">
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Alamat</td>
|
||||
<td class="px-4 py-2">
|
||||
<!-- Lokasi -->
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Lokasi</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Koordinat</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
<input type="text" name="kordinat_lat" class="input" placeholder="Latitude"
|
||||
value="{{ $inspectionData['asset']['kordinat_lat'] ?? '' }}">
|
||||
<input type="text" name="kordinat_lng" class="input" placeholder="Longitude"
|
||||
value="{{ $inspectionData['asset']['kordinat_lng'] ?? '' }}">
|
||||
</div>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
<input type="text" name="kordinat_lat_pembanding[]" class="input"
|
||||
placeholder="Latitude">
|
||||
<input type="text" name="kordinat_lng_pembanding[]" class="input"
|
||||
placeholder="Longitude">
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Alamat</td>
|
||||
<td class="px-4 py-2">
|
||||
@php
|
||||
$statusAlamat = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$address = $inspectionData['asset']['alamat'][$statusAlamat]['address'] ?? null;
|
||||
@endphp
|
||||
<textarea name="address" class="input py-2" rows="2">{{ $address }}</textarea>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<textarea name="address_pembanding[]" class="input py-2" rows="2"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Provinsi</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="province_code" name="province_code" class="input w-full">
|
||||
@php
|
||||
$statusAlamat = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$address =
|
||||
$inspectionData['asset']['alamat'][$statusAlamat]['address'] ??
|
||||
null;
|
||||
$address = $inspectionData['asset']['alamat'][$statusKey]['province_code'] ?? null;
|
||||
@endphp
|
||||
<textarea name="address" class="input py-2" rows="2">{{ $address }}</textarea>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<textarea name="address_pembanding[]" class="input py-2" rows="2"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Provinsi</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="province_code" name="province_code" class="input w-full">
|
||||
<option value="">Select Province</option>
|
||||
@foreach ($provinces as $province)
|
||||
@php
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$address =
|
||||
$inspectionData['asset']['alamat'][$statusKey][
|
||||
'province_code'
|
||||
] ?? null;
|
||||
$selectedProvince =
|
||||
$inspectionData['asset']['alamat'][$statusKey]['province_code'] ?? null;
|
||||
@endphp
|
||||
<option value="">Select Province</option>
|
||||
@foreach ($provinces as $province)
|
||||
@php
|
||||
$statusKey = isset(
|
||||
$inspectionData['asset']['alamat']['sesuai'],
|
||||
)
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedProvince =
|
||||
$inspectionData['asset']['alamat'][$statusKey][
|
||||
'province_code'
|
||||
] ?? null;
|
||||
@endphp
|
||||
|
||||
<option value="{{ $province->code }}"
|
||||
{{ $selectedProvince == $province->code ? 'selected' : '' }}>
|
||||
{{ $province->name }}
|
||||
<option value="{{ $province->code }}"
|
||||
{{ $selectedProvince == $province->code ? 'selected' : '' }}>
|
||||
{{ $province->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="province_code_pembanding" name="province_code_pembanding[]"
|
||||
onchange="handleProvinceChange(this)" class="input w-full">
|
||||
<option value="">Pilih Provinsi</option>
|
||||
@foreach ($provinces as $province)
|
||||
<option value="{{ $province->code }}">{{ $province->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Kabupaten/Kota</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="city_code" name="city_code" class="select w-full">
|
||||
@php
|
||||
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedCity = $inspectionData['asset']['alamat'][$statusKey]['city_code'] ?? null;
|
||||
@endphp
|
||||
<option value="">Pilih Kota/Kabupaten</option>
|
||||
@if (isset($selectedCity))
|
||||
@foreach ($cities as $city)
|
||||
<option value="{{ $city->code }}"
|
||||
{{ $selectedCity == $city->code ? 'selected' : '' }}>
|
||||
{{ $city->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="province_code_pembanding" name="province_code_pembanding[]"
|
||||
onchange="handleProvinceChange(this)" class="input w-full">
|
||||
<option value="">Pilih Provinsi</option>
|
||||
@foreach ($provinces as $province)
|
||||
<option value="{{ $province->code }}">{{ $province->name }}
|
||||
@endif
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="city_code_pembanding" name="city_code_pembanding[]"
|
||||
onchange="handleCityChange(this)" class="input w-full">
|
||||
<option value="">Pilih Kota/Kabupaten</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Kecamatan</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="district_code" name="district_code" class="select w-full">
|
||||
@php
|
||||
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedDisrict =
|
||||
$inspectionData['asset']['alamat'][$statusKey]['district_code'] ?? null;
|
||||
@endphp
|
||||
<option value="">Pilih Kecamatan</option>
|
||||
@if (isset($selectedDisrict))
|
||||
@foreach ($districts as $district)
|
||||
<option value="{{ $district->code }}"
|
||||
{{ $selectedDisrict == $district->code ? 'selected' : '' }}>
|
||||
{{ $district->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Kabupaten/Kota</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="city_code" name="city_code" class="select w-full">
|
||||
@php
|
||||
<select id="district_code_pembanding" name="district_code_pembanding[]"
|
||||
onchange="handleDistrictChange(this)" class="input w-full">
|
||||
<option value="">Pilih Kecamatan</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedCity =
|
||||
$inspectionData['asset']['alamat'][$statusKey][
|
||||
'city_code'
|
||||
] ?? null;
|
||||
@endphp
|
||||
<option value="">Pilih Kota/Kabupaten</option>
|
||||
@if (isset($selectedCity))
|
||||
@foreach ($cities as $city)
|
||||
<option value="{{ $city->code }}"
|
||||
{{ $selectedCity == $city->code ? 'selected' : '' }}>
|
||||
{{ $city->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="city_code_pembanding" name="city_code_pembanding[]"
|
||||
onchange="handleCityChange(this)" class="input w-full">
|
||||
<option value="">Pilih Kota/Kabupaten</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Desa/Kelurahan</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="village_code" name="village_code" class="select w-full">
|
||||
@php
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedDesa = $inspectionData['asset']['alamat'][$statusKey]['village_code'] ?? null;
|
||||
@endphp
|
||||
<option value="">Pilih Kecamatan</option>
|
||||
@if (isset($selectedDesa))
|
||||
@foreach ($villages as $village)
|
||||
<option value="{{ $village->code }}"
|
||||
{{ $selectedDesa == $village->code ? 'selected' : '' }}>
|
||||
{{ $village->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="village_code_pembanding" name="village_code_pembanding[]" class="input w-full">
|
||||
<option value="">Pilih Desa/Kelurahan</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Kecamatan</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="district_code" name="district_code" class="select w-full">
|
||||
@php
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Harga Per Meter</td>
|
||||
</tr>
|
||||
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedDisrict =
|
||||
$inspectionData['asset']['alamat'][$statusKey][
|
||||
'district_code'
|
||||
] ?? null;
|
||||
@endphp
|
||||
<option value="">Pilih Kecamatan</option>
|
||||
@if (isset($selectedDisrict))
|
||||
@foreach ($districts as $district)
|
||||
<option value="{{ $district->code }}"
|
||||
{{ $selectedDisrict == $district->code ? 'selected' : '' }}>
|
||||
{{ $district->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<tr>
|
||||
<td class="px-4 py-2">Harga</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga" class="input currency-format"
|
||||
value="{{ $inspectionData['asset']['harga'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga_pembanding[]" class="input currency">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Diskon</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="input">
|
||||
<input type="text" name="diskon" class=" currency"
|
||||
value="{{ $inspectionData['asset']['diskon'] ?? '' }}">
|
||||
<span class="btn btn-icon">
|
||||
<i class="ki-outline ki-percentage"></i>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<select id="district_code_pembanding" name="district_code_pembanding[]"
|
||||
onchange="handleDistrictChange(this)" class="input w-full">
|
||||
<option value="">Pilih Kecamatan</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</td>
|
||||
<td class=" px-4 py-2">
|
||||
<div class="input">
|
||||
<input type="text" name="diskon_pembanding[]" class="currency">
|
||||
<span class="btn btn-icon">
|
||||
<i class="ki-outline ki-percentage"></i>
|
||||
</i>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Desa/Kelurahan</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="village_code" name="village_code" class="select w-full">
|
||||
@php
|
||||
$statusKey = isset($inspectionData['asset']['alamat']['sesuai'])
|
||||
? 'sesuai'
|
||||
: 'tidak sesuai';
|
||||
$selectedDesa =
|
||||
$inspectionData['asset']['alamat'][$statusKey][
|
||||
'village_code'
|
||||
] ?? null;
|
||||
@endphp
|
||||
<option value="">Pilih Kecamatan</option>
|
||||
@if (isset($selectedDesa))
|
||||
@foreach ($villages as $village)
|
||||
<option value="{{ $village->code }}"
|
||||
{{ $selectedDesa == $village->code ? 'selected' : '' }}>
|
||||
{{ $village->name }}
|
||||
</option>
|
||||
@endforeach
|
||||
@endif
|
||||
</select>
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<select id="village_code_pembanding" name="village_code_pembanding[]"
|
||||
class="input w-full">
|
||||
<option value="">Pilih Desa/Kelurahan</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr class="bg-gray-100">
|
||||
<td colspan="3" class="px-4 py-2 font-semibold">Harga Per Meter</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="px-4 py-2">Harga</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga" class="input currency-format"
|
||||
value="{{ $inspectionData['asset']['harga'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga_pembanding[]"
|
||||
class="input currency">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Diskon</td>
|
||||
<td class="px-4 py-2">
|
||||
<div class="input">
|
||||
<input type="text" name="diskon" class=" currency"
|
||||
value="{{ $inspectionData['asset']['diskon'] ?? '' }}">
|
||||
<span class="btn btn-icon">
|
||||
<i class="ki-outline ki-percentage"></i>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</td>
|
||||
<td class=" px-4 py-2">
|
||||
<div class="input">
|
||||
<input type="text" name="diskon_pembanding[]"
|
||||
class="currency">
|
||||
<span class="btn btn-icon">
|
||||
<i class="ki-outline ki-percentage"></i>
|
||||
</i>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr style="display: none;">
|
||||
<td class="px-4 py-2">Total</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="total" class="input currency"
|
||||
value="{{ $inspectionData['asset']['total'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="total_pembanding[]"
|
||||
class="input currency-format">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Harga Setelah Diskon</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga_diskon" class="input currency-format" readonly
|
||||
value="{{ $inspectionData['asset']['harga_diskon'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga_diskon_pembanding[]" readonly
|
||||
class="input currency-format">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr style="display: none;">
|
||||
<td class="px-4 py-2">Total</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="total" class="input currency"
|
||||
value="{{ $inspectionData['asset']['total'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="total_pembanding[]" class="input currency-format">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="px-4 py-2">Harga Setelah Diskon</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga_diskon" class="input currency-format" readonly
|
||||
value="{{ $inspectionData['asset']['harga_diskon'] ?? '' }}">
|
||||
</td>
|
||||
<td class="px-4 py-2">
|
||||
<input type="text" name="harga_diskon_pembanding[]" readonly
|
||||
class="input currency-format">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -18,9 +18,9 @@ use Modules\Lpj\Http\Controllers\JenisPenilaianController;
|
||||
use Modules\Lpj\Http\Controllers\KJPPController;
|
||||
use Modules\Lpj\Http\Controllers\LaporanController;
|
||||
use Modules\Lpj\Http\Controllers\NilaiPlafondController;
|
||||
use Modules\Lpj\Http\Controllers\NocController;
|
||||
use Modules\Lpj\Http\Controllers\PembatalanController;
|
||||
use Modules\Lpj\Http\Controllers\PemilikJaminanController;
|
||||
use Modules\Lpj\Http\Controllers\NocController;
|
||||
use Modules\Lpj\Http\Controllers\PembatalanController;
|
||||
use Modules\Lpj\Http\Controllers\PemilikJaminanController;
|
||||
use Modules\Lpj\Http\Controllers\PenilaianController;
|
||||
use Modules\Lpj\Http\Controllers\PenilaiController;
|
||||
use Modules\Lpj\Http\Controllers\PermohonanController;
|
||||
@@ -554,6 +554,7 @@ Route::middleware(['auth'])->group(function () {
|
||||
Route::put('storeAproved/{storeAproved}', [SurveyorController::class, 'storeAproved'])->name('storeAproved');
|
||||
Route::post('storeFreeze/{id}', [SurveyorController::class, 'storeFreeze'])->name('storeFreeze');
|
||||
Route::post('storeFoto', [SurveyorController::class, 'storeFoto'])->name('storeFoto');
|
||||
Route::put('updateFoto', [SurveyorController::class, 'updateFoto'])->name('updateFoto');
|
||||
Route::delete('/surveyor/hapus-foto', [SurveyorController::class, 'hapusFoto'])->name('hapusFoto');
|
||||
|
||||
Route::delete('/hapus-lantai', [SurveyorController::class, 'hapusLantai'])->name('hapusLantai');
|
||||
|
||||
Reference in New Issue
Block a user