diff --git a/app/Http/Controllers/PenilaiController.php b/app/Http/Controllers/PenilaiController.php index be11bac..6dfc96c 100644 --- a/app/Http/Controllers/PenilaiController.php +++ b/app/Http/Controllers/PenilaiController.php @@ -63,7 +63,7 @@ class PenilaiController extends Controller $forminspeksi = json_decode($inpeksi->data_form, true); } - return view('lpj::penilai.lampiran', compact('permohonan', 'formFoto', 'forminspeksi','basicData', 'penilai')); + return view('lpj::penilai.lampiran', compact('permohonan', 'formFoto', 'forminspeksi', 'basicData', 'penilai')); } public function create() @@ -406,7 +406,7 @@ class PenilaiController extends Controller $permohonan = $this->surveyorController->getPermohonanJaminanId($permohonanId, $documentId, $jaminanId); $nomorLaporan = $this->generateNoLaporan($permohonan, $documentId, 'call-report'); $basicData = $this->surveyorController->getCommonData(); - // $inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); + $inspeksi = Inspeksi::where('permohonan_id', $permohonanId)->where('dokument_id', $documentId)->first(); // Penilai::updateOrCreate( // [ // 'permohonan_id' => $permohonanId, @@ -424,46 +424,46 @@ class PenilaiController extends Controller // $rap = null; // $forminspeksi = null; // if ($resume) { - // $forminspeksi = json_decode($inspeksi->data_form, true); + $forminspeksi = json_decode($inspeksi->data_form, true); // $rap = json_decode($resume->rap, true); // } // Default: gunakan data dari debitur - // $debitur = Debiture::find($permohonan->debiture_id); + $debitur = Debiture::find($permohonan->debiture_id); - // $provinceCode = $debitur->province_code; - // $cityCode = $debitur->city_code; - // $districtCode = $debitur->district_code; + $provinceCode = $debitur->province_code; + $cityCode = $debitur->city_code; + $districtCode = $debitur->district_code; - // $cekAlamat = $forminspeksi['asset']['alamat']['tidak sesuai'] ?? null; + $cekAlamat = $forminspeksi['asset']['alamat']['tidak sesuai'] ?? null; - // if ($cekAlamat) { - // $provinceCode = $cekAlamat['province_code'] ?? $provinceCode; - // $cityCode = $cekAlamat['city_code'] ?? $cityCode; - // $districtCode = $cekAlamat['district_code'] ?? $districtCode; - // } + if ($cekAlamat) { + $provinceCode = $cekAlamat['province_code'] ?? $provinceCode; + $cityCode = $cekAlamat['city_code'] ?? $cityCode; + $districtCode = $cekAlamat['district_code'] ?? $districtCode; + } - // $cities = City::where('province_code', $provinceCode)->get(); - // $districts = District::where('city_code', $cityCode)->get(); - // $villages = Village::where('district_code', $districtCode)->get(); + $cities = City::where('province_code', $provinceCode)->get(); + $districts = District::where('city_code', $cityCode)->get(); + $villages = Village::where('district_code', $districtCode)->get(); - // if ($forminspeksi) { - // if (isset($forminspeksi['alamat']['sesuai']['province_code'])) { - // $cities = City::where('province_code', $forminspeksi['alamat']['sesuai']['province_code'])->get(); - // } + if ($forminspeksi) { + if (isset($forminspeksi['alamat']['sesuai']['province_code'])) { + $cities = City::where('province_code', $forminspeksi['alamat']['sesuai']['province_code'])->get(); + } - // if (isset($forminspeksi['alamat']['sesuai']['city_code'])) { - // $districts = District::where('city_code', $forminspeksi['alamat']['sesuai']['city_code'])->get(); - // } + if (isset($forminspeksi['alamat']['sesuai']['city_code'])) { + $districts = District::where('city_code', $forminspeksi['alamat']['sesuai']['city_code'])->get(); + } - // if (isset($forminspeksi['alamat']['sesuai']['district_code'])) { - // $villages = Village::where('district_code', $forminspeksi['alamat']['sesuai']['district_code'])->get(); - // } - // } + if (isset($forminspeksi['alamat']['sesuai']['district_code'])) { + $villages = Village::where('district_code', $forminspeksi['alamat']['sesuai']['district_code'])->get(); + } + } // return view('lpj::penilai.components.call-report', compact('permohonan', 'rap', 'provinces', 'cities', // 'districts', // 'villages','forminspeksi', 'noLpRAP', 'basicData','cekAlamat')); - return view('lpj::penilai.components.call-report', compact('permohonan','basicData', 'nomorLaporan')); + return view('lpj::penilai.components.call-report', compact('permohonan', 'basicData', 'nomorLaporan', 'forminspeksi', 'cities', 'districts', 'villages', 'cekAlamat')); } /** @@ -988,6 +988,47 @@ class PenilaiController extends Controller } + public function storeCallReport(Request $request) + { + try { + + $validated = $request->validate([ + 'permohonan_id' => 'required|exists:permohonan,id', + 'dokument_id' => 'required|exists:dokument,id', + 'inspeksi_id' => 'required|exists:inspeksi,id', + 'data' => 'required' + ]); + + DB::beginTransaction(); + $data = $request->input('data'); + + Penilai::updateOrCreate( + [ + 'permohonan_id' => $request->permohonanId, + 'dokument_id' => $request->documentId, + 'inspeksi_id' => $request->inspeksiId, + ], + [ + 'call-report' => json_encode($data), + ] + ); + DB::commit(); + return response()->json([ + 'success' => true, + 'message' => 'Berhasil menyimpan data', + 'data' => $result + ], 200); + } catch (\Throwable $e) { + DB::rollBack(); + return response()->json([ + 'success' => false, + 'message' => 'Terjadi kesalahan saat menyimpan data', + 'error' => $e->getMessage(), + 'trace' => $e->getTraceAsString() + ], 500); + } + } + public function print_out(Request $request) @@ -1044,7 +1085,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', @@ -1454,4 +1495,5 @@ class PenilaiController extends Controller } + } diff --git a/app/Http/Controllers/SurveyorController.php b/app/Http/Controllers/SurveyorController.php index 408494f..c0c9f07 100644 --- a/app/Http/Controllers/SurveyorController.php +++ b/app/Http/Controllers/SurveyorController.php @@ -814,11 +814,17 @@ class SurveyorController extends Controller // If validation passes, update permohonan status $permohonan = Permohonan::findOrFail($id); + + + $permohonan->update([ 'status' => 'survey-completed', 'submitted_at' => now() ]); + + + return response()->json([ 'success' => true, 'message' => 'Form surveyor berhasil disubmit' @@ -2200,6 +2206,7 @@ class SurveyorController extends Controller 'branch', 'tujuanPenilaian', 'penilaian', + 'penawaran', 'debiture.documents' => function ($query) use ($dokumentId, $jaminanId) { $query->where('id', $dokumentId) ->where('jenis_jaminan_id', $jaminanId); diff --git a/resources/views/penilai/components/call-report.blade.php b/resources/views/penilai/components/call-report.blade.php index f10797d..a53c2f4 100644 --- a/resources/views/penilai/components/call-report.blade.php +++ b/resources/views/penilai/components/call-report.blade.php @@ -9,11 +9,13 @@ @php $senior_officer = null; $jenisJaminan = null; + $tanggalPenilaian = null; if ($permohonan->debiture && $permohonan->documents) { foreach ($permohonan->documents as $dokumen) { $penilai = $permohonan->penilaian->userPenilai->where('role', 'penilai')->first(); $teams = $permohonan->region->teams; + $tanggalPenilaian = $permohonan->penilaian->waktu_penilaian; $jenisJaminan = $dokumen->jenisJaminan->name; if ($teams) { foreach ($teams as $team) { @@ -57,21 +59,21 @@