From f8415939eae8952744704c1d3a7c4d1201c95999 Mon Sep 17 00:00:00 2001 From: Andy Chaerudin Date: Mon, 25 Nov 2024 11:14:31 +0700 Subject: [PATCH 01/14] Feature Registrasi menambahkan inputan SLA (kebutuhan SPK PDF), Feature SPK menambahkan parameter SLA generate number SPK --- app/Helpers/Lpj.php | 119 +++++++++++++++++- app/Http/Controllers/RegistrasiController.php | 9 +- app/Http/Controllers/SpkController.php | 70 ++++++++--- app/Models/Permohonan.php | 6 + ...4_11_21_114000_update_permohonan_table.php | 28 +++++ ...24_11_24_024345_update_penawaran_table.php | 32 +++++ resources/views/registrasi/edit.blade.php | 9 ++ .../views/registrasi/js/editjs.blade.php | 19 ++- resources/views/registrasi/show.blade.php | 9 ++ resources/views/spk/documentSPK.blade.php | 63 ++++++---- resources/views/spk/edit.blade.php | 80 +++++++----- routes/breadcrumbs_registrasi.php | 2 +- 12 files changed, 367 insertions(+), 79 deletions(-) create mode 100644 database/migrations/2024_11_21_114000_update_permohonan_table.php create mode 100644 database/migrations/2024_11_24_024345_update_penawaran_table.php diff --git a/app/Helpers/Lpj.php b/app/Helpers/Lpj.php index 5ce58a0..c5c2eb7 100644 --- a/app/Helpers/Lpj.php +++ b/app/Helpers/Lpj.php @@ -106,11 +106,14 @@ use Modules\Lpj\Models\HolidayCalendar; // generate last penawaran.code function onLastnumberCodePenawaran(): string { - // chek data penawaran terakhir --> mengurutkan data berdasarkan kolom `created_at` secara DESC + // ambil code terakhir $maxCode = PenawaranTender::max('code'); + // chek data penawaran terakhir --> mengurutkan data berdasarkan kolom `created_at` secara DESC // $penawaran = PenawaranTender::latest()->first(); $penawaran = PenawaranTender::where('code','=',$maxCode)->first(); $code_penawaran_last=''; + + // nomor di set 0001 $noUrutAkhirString = sprintf("%04s", 1); if($penawaran) { @@ -121,10 +124,124 @@ use Modules\Lpj\Models\HolidayCalendar; { $noUrutAkhirString = sprintf("%04s", abs($code_penawaran_last + 1)); } + // jika ternyata tahun tdk sama (kurang dari tahun sekarang), maka nomor di set 0001 } return 'NP'.Carbon::now()->format('y').$noUrutAkhirString; } + + // generate last penawaran.no_spk + function onLastnumberCodePenawaranSPK($jenis_laporan_code): string + { + + // 20241124_001 ==> spk_no_core + // XXX / PJ / JKT / MONTH-ROM / FR|SR / 2024 + // 001 / PJ / JKT / XI / FR / 2024 + $maxCode = PenawaranTender::max('spk_no_core'); + $penawaran = PenawaranTender::where('spk_no_core','=',$maxCode)->first(); + $no_spk_penawaran_last=''; + $year_penawaran_last=''; + $year_now = Carbon::now()->year; + // nomor di set 001 + $noUrutAkhirString = sprintf("%03s", 1); + if($penawaran) + { + $no_spk_penawaran_last = substr ($maxCode, -3); + $year_penawaran_last = substr ($maxCode, 0, 4); + + if($year_now == $year_penawaran_last) + { + $noUrutAkhirString = sprintf("%03s", abs($no_spk_penawaran_last + 1)); + } + // jika ternyata tahun tdk sama (kurang dari tahun sekarang), maka nomor di set 001 + } + + $month = onRomawi(Carbon::now()->month); + + $lastSPK = $noUrutAkhirString.' / PJ / JKT / '. $month .' / ' .$jenis_laporan_code.' / '.$year_now; + return $lastSPK; + } + + function onRomawi(int $bln): string + { + switch ($bln){ + case 1: + return "I"; + break; + case 2: + return "II"; + break; + case 3: + return "III"; + break; + case 4: + return "IV"; + break; + case 5: + return "V"; + break; + case 6: + return "VI"; + break; + case 7: + return "VII"; + break; + case 8: + return "VIII"; + break; + case 9: + return "IX"; + break; + case 10: + return "X"; + break; + case 11: + return "XI"; + break; + case 12: + return "XII"; + break; + + } + + } + + function penyebut($nilai) { + $nilai = abs($nilai); + $huruf = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas"); + $temp = ""; + if ($nilai < 12) { + $temp = " ". $huruf[$nilai]; + } else if ($nilai <20) { + $temp = penyebut($nilai - 10). " belas"; + } else if ($nilai < 100) { + $temp = penyebut($nilai/10)." puluh". penyebut($nilai % 10); + } else if ($nilai < 200) { + $temp = " seratus" . penyebut($nilai - 100); + } else if ($nilai < 1000) { + $temp = penyebut($nilai/100) . " ratus" . penyebut($nilai % 100); + } else if ($nilai < 2000) { + $temp = " seribu" . penyebut($nilai - 1000); + } else if ($nilai < 1000000) { + $temp = penyebut($nilai/1000) . " ribu" . penyebut($nilai % 1000); + } else if ($nilai < 1000000000) { + $temp = penyebut($nilai/1000000) . " juta" . penyebut($nilai % 1000000); + } else if ($nilai < 1000000000000) { + $temp = penyebut($nilai/1000000000) . " milyar" . penyebut(fmod($nilai,1000000000)); + } else if ($nilai < 1000000000000000) { + $temp = penyebut($nilai/1000000000000) . " trilyun" . penyebut(fmod($nilai,1000000000000)); + } + return $temp; + } + + function terbilang($nilai) { + if($nilai<0) { + $hasil = "minus ". trim(penyebut($nilai)); + } else { + $hasil = trim(penyebut($nilai)); + } + return $hasil; + } // andy add diff --git a/app/Http/Controllers/RegistrasiController.php b/app/Http/Controllers/RegistrasiController.php index 6b69cd0..c6e80b2 100644 --- a/app/Http/Controllers/RegistrasiController.php +++ b/app/Http/Controllers/RegistrasiController.php @@ -120,7 +120,7 @@ } } else { $data['status'] = 'error'; - $data['message'] ['message_ajax'] = ["no ajax request"]; + $data['message']['message_ajax'] = ["no ajax request"]; } return response()->json($data); @@ -149,6 +149,7 @@ if ($tindakan == 0) { $dataku['jenis_penilaian_id'] = $request->jenis_penilaian; $dataku['region_id'] = $request->region; + $dataku['sla'] = $request->sla; $dataku['status'] = 'registered'; if ($request->catatan2) { $dataku['registrasi_catatan'] = $request->catatan2; @@ -205,6 +206,12 @@ $validateIt['region'] = ['required']; $messageIt ['region.required'] = 'Silahkan pilih Region'; } + else + { + $validateIt['sla'] = ['required']; + $messageIt ['sla.required'] = 'Silahkan isi SLA'; + } + } elseif ($tindakan == 1) { $validateIt['catatan'] = ['required']; $messageIt ['catatan.required'] = 'Silahkan isi Catatan'; diff --git a/app/Http/Controllers/SpkController.php b/app/Http/Controllers/SpkController.php index d5ce566..8f2b521 100644 --- a/app/Http/Controllers/SpkController.php +++ b/app/Http/Controllers/SpkController.php @@ -104,12 +104,11 @@ use Illuminate\Support\Facades\Auth; } - // data dokumen_spk - if($obj->dokumen) + // data spk_dokumen_path + if($obj->penawaran->spk_dokumen_path) { - $spkpenawaran_path = Storage::url($obj->dokumen); - // dd($spkpenawaran_path); - $data[$i]->dokumen = $spkpenawaran_path; + $spk_dokumen_path = Storage::url($obj->penawaran->spk_dokumen_path); + $data[$i]->penawaran->spk_dokumen_path = $spk_dokumen_path; } $i++; @@ -151,6 +150,7 @@ use Illuminate\Support\Facades\Auth; $penawaran = PenawaranTender::leftJoin('detail_penawaran', 'detail_penawaran.penawaran_id','=','penawaran.id') ->leftJoin('jenis_laporan', 'jenis_laporan.id','=','penawaran.jenis_laporan_id') ->leftJoin('kjpp', 'kjpp.id','=','detail_penawaran.kjpp_rekanan_id') + ->leftJoin('tujuan_penilaian_kjpp', 'tujuan_penilaian_kjpp.id','=','penawaran.tujuan_penilaian_kjpp_id') ->where('detail_penawaran.status','=',1) ->where('penawaran.id','=', $id) ->select('penawaran.*', 'detail_penawaran.attachment as attachmentku', @@ -159,7 +159,9 @@ use Illuminate\Support\Facades\Auth; 'detail_penawaran.biaya_penawaran as detail_penawaran_biaya_penawaran', 'kjpp.name as kjpp_name', 'kjpp.address as kjpp_address', - 'jenis_laporan.name as jenis_laporan_name' + 'jenis_laporan.name as jenis_laporan_name', + 'tujuan_penilaian_kjpp.name as tujuan_penilaian_kjpp_name', + 'jenis_laporan.code as jenis_laporan_code' )->first(); $permohonan = Permohonan::where('nomor_registrasi','=',$penawaran->nomor_registrasi) @@ -168,19 +170,30 @@ use Illuminate\Support\Facades\Auth; ->select('permohonan.*', 'jenis_jaminan.name as jenis_jaminan_name', 'dokumen_jaminan.address as dokumen_jaminan_address'); - $data = $permohonan->with(['user', 'debiture', 'branch', 'tujuanPenilaian'])->first(); + $data = $permohonan->with(['user', 'debiture', 'branch', 'tujuanPenilaian','dokumenjaminan'])->first(); if($penawaran->detail_penawaran_tgl_proposal) $penawaran->detail_penawaran_tgl_proposal = Carbon::parse($penawaran->detail_penawaran_tgl_proposal)->format('d F Y'); - + + // generate no spk + $spk_no_last=$penawaran->spk_no; + if(!$spk_no_last) + { + $spk_no_last = onLastnumberCodePenawaranSPK($penawaran->jenis_laporan_code); + $penawaran->spk_no = $spk_no_last; + } + + // generate no spk + return view('lpj::spk.edit', compact('data', 'penawaran')); } public function update(Request $request, $id): JsonResponse { // init - $data1 = array(); - $dataPermohonan = array(); + $data1 = []; + // $dataPermohonan = array(); + $dataPenawaran = []; // data $penawaran = PenawaranTender::leftJoin('detail_penawaran', 'detail_penawaran.penawaran_id','=','penawaran.id') @@ -194,7 +207,8 @@ use Illuminate\Support\Facades\Auth; 'detail_penawaran.biaya_penawaran as detail_penawaran_biaya_penawaran', 'kjpp.name as kjpp_name', 'kjpp.address as kjpp_address', - 'jenis_laporan.name as jenis_laporan_name' + 'jenis_laporan.name as jenis_laporan_name', + 'jenis_laporan.code as jenis_laporan_code' )->first(); $permohonan = Permohonan::where('nomor_registrasi','=',$penawaran->nomor_registrasi) @@ -202,7 +216,7 @@ use Illuminate\Support\Facades\Auth; ->leftJoin('jenis_jaminan', 'jenis_jaminan.id','=','dokumen_jaminan.jenis_jaminan_id') ->select('permohonan.*', 'jenis_jaminan.name as jenis_jaminan_name'); - $data = $permohonan->with(['user', 'debiture', 'branch', 'tujuanPenilaian'])->first(); + $data = $permohonan->with(['user', 'debiture', 'branch', 'tujuanPenilaian','dokumenjaminan'])->first(); if($penawaran->detail_penawaran_tgl_proposal) $penawaran->detail_penawaran_tgl_proposal = Carbon::parse($penawaran->detail_penawaran_tgl_proposal)->format('d F Y'); @@ -213,15 +227,33 @@ use Illuminate\Support\Facades\Auth; $newFileNameWithPath = $folderPath . $newFileName; // update table permohonan - $dataPermohonan=['dokumen' => $newFileNameWithPath]; - $data->update($dataPermohonan); + // $dataPermohonan=['dokumen' => $newFileNameWithPath]; + // $data->update($dataPermohonan); // update table permohonan + + // update table penawaran + $dataPenawaran['spk_dokumen_path'] = $newFileNameWithPath; + if(!$penawaran->spk_no) + { + $spk_no_last = onLastnumberCodePenawaranSPK($penawaran->jenis_laporan_code); + // $penawaran->no_spk = $no_spk_last; + $date_now = Carbon::now()->format('Ymd');// 20240124 + $spk_number = substr ($spk_no_last, 0, 3); + $dataPenawaran['spk_no'] = $spk_no_last; + $dataPenawaran['spk_no_core'] = $date_now.'_'.$spk_number; + + $penawaran->spk_no = $spk_no_last; + + } + $penawaranM = PenawaranTender::find($penawaran->id); + $penawaranM->update($dataPenawaran); + // update table penawaran // pdf path $spkpenawaran_path = Storage::url($newFileNameWithPath); $pdf =Pdf::loadView('lpj::spk.documentSPK', compact('data', 'penawaran')); - + $pdf->setPaper('A4', 'portrait'); $content = $pdf->download()->getOriginalContent(); Storage::put('public/'.$newFileNameWithPath,$content); @@ -260,8 +292,10 @@ use Illuminate\Support\Facades\Auth; } public function download($id) { - $document = Permohonan::find($id); - - return response()->download(storage_path('app/public/' .$document->dokumen)); + // dokumen pdf diambil dari penawaran.spk_dokumen_path + $permohonan = Permohonan::find($id); + $document = PenawaranTender::where('nomor_registrasi','=',$permohonan->nomor_registrasi)->first(); + + return response()->download(storage_path('app/public/' .$document->spk_dokumen_path)); } } diff --git a/app/Models/Permohonan.php b/app/Models/Permohonan.php index 81b94b7..f8d57da 100644 --- a/app/Models/Permohonan.php +++ b/app/Models/Permohonan.php @@ -40,6 +40,7 @@ 'registrasi_at', 'jenis_penilaian_id', 'region_id', + 'sla' ]; protected static function boot() @@ -153,4 +154,9 @@ { return $this->hasMany(PermohonanHistory::class, 'permohonan_id', 'id')->orderBy('created_at', 'desc'); } + + public function dokumenjaminan() + { + return $this->hasMany(DokumenJaminan::class); + } } diff --git a/database/migrations/2024_11_21_114000_update_permohonan_table.php b/database/migrations/2024_11_21_114000_update_permohonan_table.php new file mode 100644 index 0000000..587fb4e --- /dev/null +++ b/database/migrations/2024_11_21_114000_update_permohonan_table.php @@ -0,0 +1,28 @@ +integer('sla')->nullable(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('permohonan', function (Blueprint $table) { + $table->dropColumn('sla'); + }); + } +}; diff --git a/database/migrations/2024_11_24_024345_update_penawaran_table.php b/database/migrations/2024_11_24_024345_update_penawaran_table.php new file mode 100644 index 0000000..90b2809 --- /dev/null +++ b/database/migrations/2024_11_24_024345_update_penawaran_table.php @@ -0,0 +1,32 @@ +string('spk_no')->nullable()->after('status'); + $table->string('spk_no_core')->nullable()->after('spk_no'); + $table->string('spk_dokumen_path')->nullable()->after('spk_no_core'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('penawaran', function (Blueprint $table) { + $table->dropColumn('spk_no'); + $table->dropColumn('spk_no_core'); + $table->dropColumn('spk_dokumen_path'); + }); + } +}; diff --git a/resources/views/registrasi/edit.blade.php b/resources/views/registrasi/edit.blade.php index c606451..be2b136 100644 --- a/resources/views/registrasi/edit.blade.php +++ b/resources/views/registrasi/edit.blade.php @@ -72,6 +72,15 @@ +
+ +
+ + +
+
+
+ +
+ + +
+
@@ -151,6 +150,13 @@ @endsection @push('scripts') + + + @endpush + + + diff --git a/resources/views/surveyor/components/apartemen-kantor.blade.php b/resources/views/surveyor/components/apartemen-kantor.blade.php index b5493cd..654f2d0 100644 --- a/resources/views/surveyor/components/apartemen-kantor.blade.php +++ b/resources/views/surveyor/components/apartemen-kantor.blade.php @@ -27,10 +27,10 @@
- - +
@@ -80,9 +80,6 @@ - - -
diff --git a/resources/views/surveyor/components/bangunan.blade.php b/resources/views/surveyor/components/bangunan.blade.php index 7dee989..b78b11b 100644 --- a/resources/views/surveyor/components/bangunan.blade.php +++ b/resources/views/surveyor/components/bangunan.blade.php @@ -5,7 +5,20 @@
- + +
+ + @if (isset($permohonan->debiture->documents)) + @foreach ($permohonan->debiture->documents as $item) + @php + $luas = $item->detail; + $details = json_decode($luas[0]->details, true); + $luas_bangunan = isset($details['luas_bangunan']) ? $details['luas_bangunan'] : 'N/A'; + @endphp +

{{ $luas_bangunan }} m2

+ @endforeach + + @endif
+
@@ -139,7 +153,7 @@ @if (@isset($spekKategoriBagunan)) @foreach ($spekKategoriBagunan as $item)
- @@ -149,7 +163,7 @@ @if ($spek->spek_kategori_bangunan_id == $item->id) @@ -235,33 +249,39 @@ document.getElementById('addBagunan').addEventListener('click', function() { const newDiv = spekBangunanContainer.querySelector('.spek-bangunan').cloneNode(true); - console.log('Building label'); - // Clear the selected values and input fields of the cloned input fields - newDiv.querySelectorAll('select, input').forEach(input => { + + // Update input fields + newDiv.querySelectorAll('select, input').forEach((input, index) => { if (input.type === 'checkbox' || input.type === 'radio') { input.checked = false; } else { input.value = ''; } + + // Update name attribute + if (input.name) { + const baseName = input.name.split('[')[0]; // Get the base name + const count = spekBangunanContainer.querySelectorAll('.spek-bangunan').length + 1; + input.name = `${baseName}[${count}]`; + } }); - // Append the cloned div to the container + // Append the cloned div spekBangunanContainer.appendChild(newDiv); // Add event listener to the delete button in the cloned div newDiv.querySelector('.delete-button').addEventListener('click', function() { spekBangunanContainer.removeChild(newDiv); updateDeleteButtonsVisibility(); - updateBuildingLabels(); // Update the labels after removing - console.log('Building label'); + updateBuildingLabels(); }); - // Update delete buttons visibility and labels + // Update UI updateDeleteButtonsVisibility(); updateBuildingLabels(); - console.log('Building label'); }); + // Initial setup: Ensure "Bangunan 1" is labeled document.addEventListener('DOMContentLoaded', () => { updateDeleteButtonsVisibility(); diff --git a/resources/views/surveyor/components/data-pembanding.blade.php b/resources/views/surveyor/components/data-pembanding.blade.php index b86f5dc..28b7f41 100644 --- a/resources/views/surveyor/components/data-pembanding.blade.php +++ b/resources/views/surveyor/components/data-pembanding.blade.php @@ -5,7 +5,8 @@ @endsection --}} @section('content') -
+ @include('lpj::assetsku.includenya') +
@@ -13,7 +14,9 @@ Data Pembanding
- Back @@ -25,548 +28,671 @@
-
-
- - -
-
-
- - - - - - - - - - - - - - - -
- Nama - - - Objek Penilaian - - - Data Pembanding 1 -
- Foto - - @php - $formFoto = json_decode($forminspeksi['foto_form'], true); - $formIns = json_decode($forminspeksi['data_form'], true); - @endphp +
+ @csrf + + + + +
+
+ + +
+
- @if (isset($formFoto['object_jaminan']) && - count($formFoto['object_jaminan']) > 0 && - isset($formFoto['object_jaminan'][0]['foto_object'])) - Gambar Pendamping - @else - - @endif +
+ + + + + + + + + + + + - - - - + + + + + + + + + + + + + + - - + + + + - - - - - - - + + + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + - - - - - - - - - - + name="luas_tanah" /> + + + + + + + + + + + + + - - - - + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - + - - - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - + + + + + + + + + + - - - + + + - - + + - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Nama + + + Objek Penilaian + + + Data Pembanding 1 +
+ Foto + + @php + $formFoto = json_decode($forminspeksi['foto_form'], true); + $formIns = json_decode($forminspeksi['data_form'], true); + @endphp - - - - -
-

Alamat

+ @if (isset($formFoto['object_jaminan']) && + count($formFoto['object_jaminan']) > 0 && + isset($formFoto['object_jaminan'][0]['foto_object'])) + Gambar Pendamping + @else + + @endif -
+ + +
+

Alamat

-
- + + + + +
Desa + + + +
- +
Kecamatan + + + +
Desa - - - -
Kabupaten + + + +
Kecamatan - - - -
Provinsi + + + +
Kabupaten - - - -
Provinsi - - - -
- Tahun Penilaian - - - - -
- Luas Tanah - - - - -
- Luas Bangunan - - - - -
- Tahun Bangunan - - - - -
- Estimasi Tahun Visual - - - - -
- Kepemilikan - - - - -
- Harga - - - - -
- Tinggi Lantai - - - - -
- Lebar Depan - - - - -
- Lebar Jalan - - - - -
- Sumber - - - - -
- Nomor tlp - - - - -
- Titik Lokasi - -
+
+ Tahun Penilaian + + name="tahun" /> + + +
+ Luas Tanah + - - -
- - -
-
- Link Internet - - - - -
Lokasi
+ +
+ Luas Bangunan + + + + +
+ Tahun Bangunan + + + + +
-

Jarak Ke jalan utama

-
- - - +
+ Estimasi Tahun Visual + + + + +
+ Kepemilikan + + + + +
+ Harga + + + + +
+ Tinggi Lantai + + + + +
+ Lebar Depan + + + + +
+ Lebar Jalan + + + + +
+ Sumber + + + + +
+ Nomor tlp + + + + +
+ Titik Lokasi +
+ Koordinat Lat + + + -
-

Lebar jalan depan aset (m)

-
- - - + -
-

Posisi kavling

-
- +
- +
+ Koordinat Lng + -
- -

Tingkat Keramaian (Occupancy)

-
- - - - -
Karakteristik Fisik
-

Kondisi Fisik Tanah

- -
- - - - - -
-

Beda Ketinggian dengan Jalan

-
- - - - -
-

Bentuk Tanah

-
- - - - - - -
-

Lebar Depan

-
- - - -
- -

Fasos Fasum

- -
- - - - - - -
- -

Lain-lain

-
- - - - - -
- Karakteristik Ekonomi - - - - -
Pengunaan
- Zonasi/Tata Kota - - - - -
- KDB - - - - - - -
-
- KLB - - + - - -
+ Link Internet + + + + +
Lokasi
- KTB - - +
+

Jarak Ke jalan utama

+
+ + + - - -
- KDH - - - - -
- Peraturan - - +
+

Lebar jalan depan aset (m)

+
+ + + + +
+

Posisi kavling

+
+ + + + + + + + + + {{-- --}} + +
+ +

Tingkat Keramaian (Occupancy)

+
+ + + +
Karakteristik Fisik
+

Kondisi Fisik Tanah

+ +
+ + + + + +
+

Beda Ketinggian dengan Jalan

+
+ + + +
+

Bentuk Tanah

+
+ + + + + +
+

Lebar Depan

+
+ + + +
+ +

Fasos Fasum

+ +
+ + + + + + +
+ +

Lain-lain

+
+ + + + + +
+ Karakteristik Ekonomi + + + + +
Pengunaan
+ Zonasi/Tata Kota + + + + +
+ KDB + + + + + + +
+ KLB + + + + + +
+ KTB + + + + + +
+ KDH + + + + + +
+ Peraturan + + + + + +
+
-
- -
-
+ +
+ +
+
+
diff --git a/resources/views/surveyor/components/denah.blade.php b/resources/views/surveyor/components/denah.blade.php index d7fcc67..4e848de 100644 --- a/resources/views/surveyor/components/denah.blade.php +++ b/resources/views/surveyor/components/denah.blade.php @@ -5,6 +5,7 @@ @endsection --}} @section('content') +@include('lpj::assetsku.includenya')
@@ -234,6 +235,7 @@ if (response.success) { window.location.href = '{{ route('surveyor.show', ['id' => $permohonan->id]) }}?form=denah'; + toastrSuccessBuild(response.message); } console.log(response); }, @@ -249,6 +251,8 @@ console.log('Status:', status); console.log('Response:', xhr.responseText); console.log(errors); + toastrErrorBuild(error); + }, complete: function() { // Re-enable the button and hide the spinner diff --git a/resources/views/surveyor/components/foto.blade.php b/resources/views/surveyor/components/foto.blade.php index 53ca8b4..43e38cb 100644 --- a/resources/views/surveyor/components/foto.blade.php +++ b/resources/views/surveyor/components/foto.blade.php @@ -5,6 +5,7 @@ @endsection --}} @section('content') +@include('lpj::assetsku.includenya')
@@ -588,104 +589,14 @@
- - + @include('lpj::surveyor.components.modal-kamera') @endsection @push('scripts') @include('lpj::surveyor.js.camera-editor') - - - @endpush diff --git a/resources/views/surveyor/components/header.blade.php b/resources/views/surveyor/components/header.blade.php index ea20501..bc3a953 100644 --- a/resources/views/surveyor/components/header.blade.php +++ b/resources/views/surveyor/components/header.blade.php @@ -1,4 +1,4 @@ -
+

Order Penilaian

@@ -79,7 +79,7 @@
-
+

Deskripsi Aset jaminan

@@ -99,36 +99,36 @@
-
- - -
+
+ + +
@@ -139,7 +139,6 @@
- @foreach ($permohonan->debiture->documents as $dokumen) {{ formatAlamat($dokumen) }} @@ -148,207 +147,136 @@
- - +
+ + +
+
- - - -
+
@@ -363,12 +291,15 @@ @@ -477,21 +408,23 @@
@foreach ($permohonan->debiture->documents as $dokumen) - {{ $dokumen->pemilik->hubungan_pemilik->name?? "" }} + {{ $dokumen->pemilik->hubungan_pemilik->name ?? '' }} @endforeach
@@ -524,24 +457,26 @@
-
-
+
+
@foreach ($permohonan->debiture->documents as $dokumen) - {{ $dokumen->penghuni->hubungan_penghuni->name?? "" }} + {{ $dokumen->penghuni->hubungan_penghuni->name ?? 'N/A' }} @endforeach
@@ -551,8 +486,8 @@ name="hub_cadeb_Penghuni_tidak_sesuai" style="{{ old('hub_cadeb', $forminspeksi['asset']['hub_cadeb'] ?? '') == 'tidak sesuai' ? '' : 'display: none;' }}"> - @if (isset($hubCadeb)) - @foreach ($hubCadeb as $item) + @if (isset($hubPenghuni)) + @foreach ($hubPenghuni as $item)
- - diff --git a/resources/views/surveyor/components/informasi.blade.php b/resources/views/surveyor/components/informasi.blade.php index 0b986ec..5864fa5 100644 --- a/resources/views/surveyor/components/informasi.blade.php +++ b/resources/views/surveyor/components/informasi.blade.php @@ -165,30 +165,44 @@ @endif
-
-
- + +
+ -
+
+
+ +
- Foto Argis Region
-
77r7777 + -
-
-

Catatan yang Perlu Diperhatikan -

+
+ + +
-
+
+ +@include('lpj::surveyor.components.modal-kamera') + +@push('scripts') +@include('lpj::surveyor.js.camera-editor') +@endpush + diff --git a/resources/views/surveyor/components/inspeksi.blade.php b/resources/views/surveyor/components/inspeksi.blade.php index 41d17e0..2074d39 100644 --- a/resources/views/surveyor/components/inspeksi.blade.php +++ b/resources/views/surveyor/components/inspeksi.blade.php @@ -5,6 +5,7 @@ @endsection --}} @section('content') + @include('lpj::assetsku.includenya')
@@ -124,6 +125,22 @@ } + function toggleAlamatVisibility(idSesuai, idTidakSesuai, selectedValue) { + // Ambil elemen berdasarkan ID + const alamatSesuai = document.getElementById(idSesuai); + const alamatTidakSesuai = document.getElementById(idTidakSesuai); + + // Periksa nilai yang dipilih dan tampilkan elemen yang sesuai + if (selectedValue === 'sesuai') { + alamatSesuai.style.display = 'grid'; // Tampilkan "Alamat Sesuai" + alamatTidakSesuai.style.display = 'none'; // Sembunyikan "Alamat Tidak Sesuai" + } else if (selectedValue === 'tidak sesuai') { + alamatSesuai.style.display = 'none'; // Sembunyikan "Alamat Sesuai" + alamatTidakSesuai.style.display = 'grid'; // Tampilkan "Alamat Tidak Sesuai" + } +} + + function submitData() { const formElement = $('#formInspeksi')[0]; @@ -144,10 +161,12 @@ 'X-CSRF-TOKEN': '{{ csrf_token() }}' }, success: function(response) { - if (response.success) { - window.location.href = - '{{ route('surveyor.show', ['id' => $permohonan->id]) }}?form=inspeksi'; - } + // if (response.success) { + // toastrSuccessBuild(response.message) + // window.location.href = + // '{{ route('surveyor.show', ['id' => $permohonan->id]) }}?form=inspeksi'; + // } + console.log(response); }, error: function(xhr, status, error) { @@ -162,6 +181,7 @@ console.log('Status:', status); console.log('Response:', xhr.responseText); console.log(errors); + toastrErrorBuild(error); }, complete: function() { // Re-enable the button and hide the spinner @@ -211,8 +231,53 @@ container.appendChild(newElement); } + + + function updateAnalisa(params) { + const inputMap = { + jenis_asset: 'jenis_asset_tidak_sesuai', + analisa_tanah: 'analisa_tanah_tidak_sesuai', + analisa_unit: 'analisa_luas_unit_tidak_sesuai', + analisa_bangunan: 'analisa_bangunan_tidak_sesuai', + }; + + // Pastikan elemen ID ada di inputMap + if (!inputMap[params]) { + console.error('Parameter tidak valid:', params); + return; + } + + // Ambil nilai berdasarkan parameter + const inputValue = document.getElementById(inputMap[params]).value; + const data = { + [params === 'jenis_asset' ? 'jenis_asset' : params.replace('analisa_', 'luas_')]: inputValue, + types: params + }; + + $.ajax({ + url: '{{ route('surveyor.update_analisa', ['id' => $permohonan->id]) }}', + type: 'POST', + data: data, + headers: { + 'X-CSRF-TOKEN': '{{ csrf_token() }}' + }, + success: function(response) { + console.log(response); + if (response.success) { + if (response.jenis_asset) { + window.location.href = + '{{ route('surveyor.show', ['id' => $permohonan->id]) }}?form=inspeksi'; + } + toastrSuccessBuild(response.message); + } + }, + error: function(xhr, status, error) { + console.error('Terjadi error:', error); + console.log('Status:', status); + console.log('Response:', xhr.responseText); + toastrErrorBuild(error); + } + }); + } @endpush - - - diff --git a/resources/views/surveyor/components/modal-kamera.blade.php b/resources/views/surveyor/components/modal-kamera.blade.php new file mode 100644 index 0000000..30ed8d3 --- /dev/null +++ b/resources/views/surveyor/components/modal-kamera.blade.php @@ -0,0 +1,88 @@ + \ No newline at end of file diff --git a/resources/views/surveyor/components/tanah.blade.php b/resources/views/surveyor/components/tanah.blade.php index 63d76d7..90e490f 100644 --- a/resources/views/surveyor/components/tanah.blade.php +++ b/resources/views/surveyor/components/tanah.blade.php @@ -13,13 +13,15 @@
@if (isset($permohonan->debiture->documents)) - @foreach ($permohonan->debiture->documents as $item) - @php - $details = json_decode($item->detail); - $luas_tanah = isset($details['luas_tanah']) ? $details['luas_tanah'] : 'N/A'; - @endphp -

{{ $luas_tanah }} m2

- @endforeach + @foreach ($permohonan->debiture->documents as $item) + @php + $luas = $item->detail; + $details = json_decode($luas[0]->details, true); + $luas_tanah = isset($details['luas_tanah']) ? $details['luas_tanah'] : 'N/A'; + @endphp +

{{ $luas_tanah }} m2

+ @endforeach + @endif
@@ -38,10 +40,10 @@
- - +
@@ -63,7 +65,7 @@
diff --git a/resources/views/surveyor/index.blade.php b/resources/views/surveyor/index.blade.php index ec9b573..b95b630 100644 --- a/resources/views/surveyor/index.blade.php +++ b/resources/views/surveyor/index.blade.php @@ -200,8 +200,6 @@ function jadwal(id){ return `${day}-${month}-${year}`; } -ihfdksfjhjfjbkdfkdsfdsjkjdjdsgjjgdgjhgdgjkhdshggkhgkhdghskghkjkhjsdgjkgdjhg - @endpush diff --git a/resources/views/surveyor/js/camera-editor.blade.php b/resources/views/surveyor/js/camera-editor.blade.php index d0ff300..f37caf5 100644 --- a/resources/views/surveyor/js/camera-editor.blade.php +++ b/resources/views/surveyor/js/camera-editor.blade.php @@ -1,4 +1,304 @@ @push('scripts') + +