diff --git a/app/Http/Controllers/SurveyorController.php b/app/Http/Controllers/SurveyorController.php
index e87d454..b0e5732 100644
--- a/app/Http/Controllers/SurveyorController.php
+++ b/app/Http/Controllers/SurveyorController.php
@@ -312,8 +312,6 @@ class SurveyorController extends Controller
$inspeksi->foto_form = json_encode($formatFotojson);
$inspeksi->save();
-
-
return response()->json(['success' => true, 'message' => 'Data berhasil disimpan', 'data' => $formatFotojson], 200);
} catch (Exception $e) {
return response()->json(['success' => false, 'message' => 'Failed to upload: ' . $e->getMessage()], 500);
@@ -373,9 +371,6 @@ class SurveyorController extends Controller
}
}
-
-
-
/**
* Custom validation request for foto
*/
@@ -495,8 +490,6 @@ class SurveyorController extends Controller
}
-
-
public function storeJadwal(Request $request)
{
try {
@@ -537,10 +530,7 @@ class SurveyorController extends Controller
public function storeAproved($id)
{
try {
-
-
$penilaian = Penilaian::findOrFail($id);
-
$penilaian->update([
'authorized_status' => 1,
]);
@@ -607,8 +597,6 @@ class SurveyorController extends Controller
}
-
-
private function formatSinglePembanding($request, $index)
{
$fields = [
@@ -789,8 +777,6 @@ class SurveyorController extends Controller
$branches = Branch::all();
$provinces = Province::all();
-
-
$inpeksi = Inspeksi::where('permohonan_id', $id)->where('jenis_jaminan_id', $jaminanId)->first();
$formFoto = null;
@@ -798,12 +784,6 @@ class SurveyorController extends Controller
$formFoto = json_decode($inpeksi->foto_form, true);
}
$fotoJaminan = null;
-
- // return response()->json([
- // 'inspeksi' => $formFoto,
-
- // ]);
-
return view('lpj::surveyor.components.foto', compact('permohonan', 'surveyor', 'branches', 'provinces', 'fotoJaminan', 'formFoto'));
}
@@ -851,7 +831,6 @@ class SurveyorController extends Controller
throw new \Exception('Error decoding comparison data: ' . json_last_error_msg());
}
-
}
$fotoForm = json_decode($inspeksi->foto_form, true);
@@ -919,7 +898,6 @@ class SurveyorController extends Controller
public function createData($type)
{
-
$spekKategoriBagunan = SpekKategoritBangunan::all();
$header = $this->getHeader($type);
return view('lpj::surveyor.data.form', compact('header', 'spekKategoriBagunan'));
@@ -928,7 +906,6 @@ class SurveyorController extends Controller
public function storeData(SurveyorRequest $request, $type)
{
-
$validate = $request->validated();
if ($validate) {
@@ -1029,8 +1006,6 @@ class SurveyorController extends Controller
->with('error', 'Invalid type specified.');
}
-
-
$model = $modelClass::findOrFail($id);
$model->update($validate);
@@ -1299,10 +1274,7 @@ class SurveyorController extends Controller
if (!$modelClass) {
return response()->json(['success' => false, 'message' => 'Invalid type specified.'], 400);
}
-
-
$model = $modelClass::findOrFail($id);
-
$model->delete();
return response()->json(['success' => true, 'message' => 'deleted successfully']);
} catch (ModelNotFoundException $e) {
@@ -1382,7 +1354,6 @@ class SurveyorController extends Controller
{
return [
'branches' => Branch::all(),
-
'bentukTanah' => BentukTanah::all(),
'konturTanah' => KonturTanah::all(),
'posisiKavling' => PosisiKavling::all(),
@@ -1413,6 +1384,8 @@ class SurveyorController extends Controller
'jenisJaminan' => JenisJaminan::all(),
'hubCadeb' => HubunganPemilikJaminan::all(),
'hubPenghuni' => HubunganPenghuniJaminan::all(),
+ 'perkerasanJalan' => PerkerasanJalan::all(),
+ 'terletakDiArea' => TerletakArea::all(),
];
}
@@ -1543,23 +1516,35 @@ class SurveyorController extends Controller
$data = $request->all();
$result = [];
- // foreach ($data['nama_bangunan'] as $index => $bangunan) {
- // $bangunanData = [
- // 'bangunan' => $bangunan,
- // 'kategori' => []
- // ];
- // foreach ($data['spek_kategori_bangunan'] as $kategoriIndex => $kategori) {
- // if (isset($data['spek_bangunan'][$kategori])) {
- // $bangunanData['kategori'][] = [
- // 'kategori' => $kategori,
- // 'spesifikasi' => $data['spek_bangunan'][$kategori]
- // ];
- // }
- // }
-
- // $result[] = $bangunanData;
- // }
+ foreach ($request->input('nama_bangunan') as $index => $buildingName) {
+ if (empty($buildingName)) continue; // Skip if building name is empty
+
+ $buildingData = [];
+ $buildingData['bagunan'] = $buildingName;
+
+ $specCategories = $request->input('spek_kategori_bangunan');
+ $buildingData['spek_kategori_bangunan'] = [];
+
+ if (!empty($specCategories)) {
+ foreach ($specCategories as $category) {
+ if (empty($category)) continue; // Skip empty categories
+
+ $specs = $request->input("spek_bangunan.{$index}.{$category}", []);
+
+ // Only add category if it has specifications
+ if (!empty($specs)) {
+ $buildingData['spek_kategori_bangunan'][$category] = $specs;
+ }
+ }
+ }
+
+ // Only add building data if it has specifications
+ if (!empty($buildingData['spek_kategori_bangunan'])) {
+ $result[] = $buildingData;
+ }
+ }
+
return [
'bangunan' => [
@@ -1621,8 +1606,8 @@ class SurveyorController extends Controller
'fakta_negatif' => $data['fakta_negatif'] ?? null,
'rute_menuju' => $data['rute_menuju'] ?? null,
'batas_batas' => $this->mapArrayWithInputs(
- $data['batas_batas'] ?? null,
- $data['batas_batas_input'] ?? null
+ $data['batas_batas'] ?? [],
+ $data['batas_batas_input'] ?? []
),
'kondisi_lingkungan' => $data['kondisi_lingkungan'] ?? null,
'kondisi_lain_bangunan' => $data['kondisi_lain_bangunan'] ?? null,
diff --git a/app/Http/Requests/FormSurveyorRequest.php b/app/Http/Requests/FormSurveyorRequest.php
index 9bf82e3..11ef307 100644
--- a/app/Http/Requests/FormSurveyorRequest.php
+++ b/app/Http/Requests/FormSurveyorRequest.php
@@ -104,9 +104,13 @@ class FormSurveyorRequest extends FormRequest
'kondisi_bangunan' => 'nullable',
'sifat_bangunan' => 'required|array',
'sifat_bangunan_input' => 'nullable|array',
- 'nama_bagunan' => 'required|nullable',
- 'spek_kategori_bangunan.*' => 'required',
- 'spek_bangunan.*' => 'required',
+
+
+ 'nama_bangunan.*' => 'required|string|max:255',
+ 'spek_kategori_bangunan.*' => 'nullable|string',
+ 'spek_bangunan.*.*' => 'array',
+ 'spek_bangunan.*.*.*' => 'string',
+
'sarana_pelengkap' => 'required',
'sarana_pelengkap_input' => 'nullable|array',
];
@@ -549,7 +553,7 @@ class FormSurveyorRequest extends FormRequest
'fakta_positif' => 'nullable|array',
'fakta_negatif' => 'nullable|array',
'rute_menuju' => 'nullable',
- 'batas_batas' => 'nullable|array',
+ 'batas_batas' => 'required|array',
'batas_batas_input' => 'nullable|array',
'kondisi_lingkungan' => 'nullable|array',
'kondisi_lain_bangunan' => 'nullable|array',
diff --git a/resources/views/surveyor/components/bangunan.blade.php b/resources/views/surveyor/components/bangunan.blade.php
index 0b7a4d5..864daf0 100644
--- a/resources/views/surveyor/components/bangunan.blade.php
+++ b/resources/views/surveyor/components/bangunan.blade.php
@@ -144,50 +144,102 @@
-
-
-
-
-
- @if (@isset($basicData['spekKategoriBangunan']))
- @foreach ($basicData['spekKategoriBangunan'] as $item)
-
-
-
-
-
- @foreach ($basicData['spekBangunan'] as $spek)
- @if ($spek->spek_kategori_bangunan_id == $item->id)
-
- @endif
- @endforeach
+ @if (isset($forminspeksi['bangunan']) && is_array($forminspeksi['bangunan']))
+ @foreach ($forminspeksi['bangunan']['spesifikasi_bangunan'] as $index => $bangunan)
+
+
+
+
+ @if (@isset($basicData['spekKategoriBangunan']))
+ @foreach ($basicData['spekKategoriBangunan'] as $item)
+
+
+
+
+
+ @foreach ($basicData['spekBangunan'] as $spek)
+ @if ($spek->spek_kategori_bangunan_id == $item->id)
+
+ @endif
+ @endforeach
+
+
+
+
+ @endforeach
+ @endif
+
+
+
+ @endforeach
+ @else
+
+
+
+
+
+ @if (@isset($basicData['spekKategoriBangunan']))
+ @foreach ($basicData['spekKategoriBangunan'] as $item)
+
+
+
+
+
+ @foreach ($basicData['spekBangunan'] as $spek)
+ @if ($spek->spek_kategori_bangunan_id == $item->id)
+
+ @endif
+ @endforeach
+
+
-
-
- @endforeach
- @endif
+ @endforeach
+ @endif
+
+
-
-
+ @endif
-