diff --git a/app/Http/Controllers/DokumenJaminanController.php b/app/Http/Controllers/DokumenJaminanController.php index ddceb55..1907fbf 100644 --- a/app/Http/Controllers/DokumenJaminanController.php +++ b/app/Http/Controllers/DokumenJaminanController.php @@ -54,10 +54,11 @@ 'address' => $debitur->address, ]; - $pemilikJaminan = PemilikJaminan::updateOrCreate([ + $pemilikJaminan = PemilikJaminan::updateOrCreate([ 'debiture_id' => $id, 'name' => $debitur->name, ], $pemilik_jaminan); + $validate['pemilik_jaminan_id'] = $pemilikJaminan->id; } if ($request->hasFile('dokumen_jaminan')) { @@ -67,14 +68,15 @@ $validate['dokumen_jaminan'] = 'jaminan/' . $debitur->id . '/' . $file_name; } - $validate['pemilik_jaminan_id'] = $pemilikJaminan->id; + DokumenJaminan::create($validate); - - return redirect()->route('debitur.jaminan.index', $id); + return redirect()->route('debitur.jaminan.index', $id)->with( + 'success', + 'Dokumen Jaminan berhasil ditambahkan', + ); } catch (Exception $e) { - print_r($e->getMessage()); - exit; + return redirect()->route('debitur.jaminan.index', $id)->with('error', $e->getMessage()); } } } @@ -85,10 +87,11 @@ $provinces = Province::all(); $jenisJaminan = JenisJaminan::all(); $jenisLegalitasJaminan = JenisLegalitasJaminan::all(); + $pemilikJaminan = PemilikJaminan::where('debiture_id', $id)->get(); return view( 'lpj::debitur.jaminan', - compact('debitur', 'provinces', 'jenisJaminan', 'jenisLegalitasJaminan'), + compact('debitur', 'provinces', 'jenisJaminan', 'jenisLegalitasJaminan', 'pemilikJaminan'), ); } @@ -131,11 +134,12 @@ $document = DokumenJaminan::find($jaminan); $document->update($validate); - - return redirect()->route('debitur.jaminan.index', $id); + return redirect()->route('debitur.jaminan.index', $id)->with( + 'success', + 'Dokumen Jaminan berhasil diubah', + ); } catch (Exception $e) { - print_r($e->getMessage()); - exit; + return redirect()->route('debitur.jaminan.index', $id)->with('error', $e->getMessage()); } } } @@ -150,7 +154,7 @@ $villages = Village::where('district_code', $document->district_code)->get(); $jenisJaminan = JenisJaminan::all(); $jenisLegalitasJaminan = JenisLegalitasJaminan::all(); - $pemilikJaminan = PemilikJaminan::all(); + $pemilikJaminan = PemilikJaminan::where('debiture_id', $document->debiture_id)->get(); return view( 'lpj::debitur.jaminan', diff --git a/app/Http/Controllers/PemilikJaminanController.php b/app/Http/Controllers/PemilikJaminanController.php index 63a0724..7c38601 100644 --- a/app/Http/Controllers/PemilikJaminanController.php +++ b/app/Http/Controllers/PemilikJaminanController.php @@ -38,10 +38,12 @@ try { PemilikJaminan::create($validate); - return redirect()->route('debitur.pemilik.index', $id); + if($request->get('from') == 'create-document'){ + return redirect()->route('debitur.document.create', $id)->with('success', 'Pemilik Jaminan berhasil ditambahkan'); + } + return redirect()->route('debitur.pemilik.index', $id)->with('success', 'Pemilik Jaminan berhasil ditambahkan'); } catch (Exception $e) { - print_r($e->getMessage()); - exit; + return redirect()->route('debitur.pemilik.index', $id)->with('error', $e->getMessage()); } } } @@ -66,10 +68,13 @@ $pemilik = PemilikJaminan::find($pemilik); $pemilik->update($validate); - return redirect()->route('debitur.pemilik.index', $id); + if($request->get('from') == 'update-document'){ + return redirect()->route('debitur.document.edit', [$id, $request->document])->with('success', 'Pemilik Jaminan berhasil diubah'); + } + + return redirect()->route('debitur.pemilik.index', $id)->with('success', 'Pemilik Jaminan berhasil diubah'); } catch (Exception $e) { - print_r($e->getMessage()); - exit; + return redirect()->route('debitur.pemilik.index', $id)->with('error',$e->getMessage()); } } } diff --git a/app/Http/Requests/DokumenJaminanRequest.php b/app/Http/Requests/DokumenJaminanRequest.php index 427b732..4cb22ce 100644 --- a/app/Http/Requests/DokumenJaminanRequest.php +++ b/app/Http/Requests/DokumenJaminanRequest.php @@ -13,7 +13,7 @@ : array { $rules = [ - 'debiture_id' => 'required|exists:debtures,id', + 'debiture_id' => 'required|exists:debitures,id', 'pemilik_jaminan_id' => 'required', 'jenis_jaminan_id' => 'required', 'jenis_legalitas_jaminan_id' => 'required', diff --git a/app/Models/DokumenJaminan.php b/app/Models/DokumenJaminan.php index 8c5b944..83886f6 100644 --- a/app/Models/DokumenJaminan.php +++ b/app/Models/DokumenJaminan.php @@ -13,6 +13,7 @@ protected $table = 'dokumen_jaminan'; protected $fillable = [ 'debiture_id', + 'permohonan_id', 'pemilik_jaminan_id', 'jenis_jaminan_id', 'jenis_legalitas_jaminan_id', @@ -66,4 +67,8 @@ public function jenisLegalitasJaminan(){ return $this->belongsTo(JenisLegalitasJaminan::class, 'jenis_legalitas_jaminan_id', 'id'); } + + public function permohonan(){ + return $this->belongsTo(Permohonan::class, 'permohonan_id', 'id'); + } } diff --git a/database/migrations/2024_08_20_090400_create_dokumen_jaminan_table.php b/database/migrations/2024_08_20_090400_create_dokumen_jaminan_table.php index bc20527..979d973 100644 --- a/database/migrations/2024_08_20_090400_create_dokumen_jaminan_table.php +++ b/database/migrations/2024_08_20_090400_create_dokumen_jaminan_table.php @@ -7,6 +7,7 @@ use Illuminate\Support\Facades\Schema; use Modules\Lpj\Models\JenisJaminan; use Modules\Lpj\Models\JenisLegalitasJaminan; use Modules\Lpj\Models\PemilikJaminan; + use Modules\Lpj\Models\Permohonan; return new class extends Migration { @@ -19,6 +20,7 @@ use Illuminate\Support\Facades\Schema; $table->id(); $table->string('name'); $table->foreignIdFor(Debiture::class)->constrained('debitures')->onDelete('cascade'); + $table->foreignIdFor(Permohonan::class)->nullable()->constrained('permohonan')->onDelete('cascade'); $table->foreignIdFor(JenisJaminan::class)->constrained('jenis_jaminan')->onDelete('cascade'); $table->foreignIdFor(PemilikJaminan::class)->constrained('pemilik_jaminan')->onDelete('cascade'); $table->foreignIdFor(JenisLegalitasJaminan::class)->constrained('jenis_legalitas_jaminan')->onDelete('cascade'); diff --git a/resources/views/debitur/components/dokumen.blade.php b/resources/views/debitur/components/dokumen.blade.php index 0361015..91b2827 100644 --- a/resources/views/debitur/components/dokumen.blade.php +++ b/resources/views/debitur/components/dokumen.blade.php @@ -36,9 +36,15 @@ @endforeach @endif - - Tambah Pemilik Jaminan - + @if(isset($document->id)) + + Tambah Pemilik Jaminan + + @else + + Tambah Pemilik Jaminan + + @endif @error('pemilik_jaminan_id') {{ $message }} diff --git a/resources/views/debitur/index.blade.php b/resources/views/debitur/index.blade.php index 8b0b357..a3b0994 100644 --- a/resources/views/debitur/index.blade.php +++ b/resources/views/debitur/index.blade.php @@ -92,6 +92,9 @@ @push('scripts')