diff --git a/app/Http/Controllers/JenisJaminanController.php b/app/Http/Controllers/JenisJaminanController.php index f9736d2..e1cbe82 100644 --- a/app/Http/Controllers/JenisJaminanController.php +++ b/app/Http/Controllers/JenisJaminanController.php @@ -9,6 +9,7 @@ use Modules\Lpj\Exports\JenisJaminanExport; use Modules\Lpj\Http\Requests\JenisJaminanRequest; use Modules\Lpj\Models\JenisJaminan; + use Modules\Lpj\Models\JenisLegalitasJaminan; class JenisJaminanController extends Controller { @@ -40,13 +41,15 @@ public function create() { - return view('lpj::jenis_jaminan.create'); + $jenisLegalitasJaminan = JenisLegalitasJaminan::all(); + return view('lpj::jenis_jaminan.create', compact('jenisLegalitasJaminan')); } public function edit($id) { - $jenisJaminan = JenisJaminan::find($id); - return view('lpj::jenis_jaminan.create', compact('jenisJaminan')); + $jenisJaminan = JenisJaminan::find($id); + $jenisLegalitasJaminan = JenisLegalitasJaminan::all(); + return view('lpj::jenis_jaminan.create', compact('jenisJaminan', 'jenisLegalitasJaminan')); } public function update(JenisJaminanRequest $request, $id) @@ -147,4 +150,13 @@ { return Excel::download(new JenisJaminanExport, 'jenis_jaminan.xlsx'); } + + public function legalitasJaminan($id) + { + $jenisJaminan = JenisJaminan::find($id); + $legalitasJaminan = $jenisJaminan->jenis_legalitas_jaminan_id; + + $legalitas = JenisLegalitasJaminan::whereIn('code', json_decode($legalitasJaminan, true))->get(); + echo json_encode($legalitas); + } } diff --git a/app/Http/Controllers/PermohonanController.php b/app/Http/Controllers/PermohonanController.php index 1392157..ea6d5f3 100644 --- a/app/Http/Controllers/PermohonanController.php +++ b/app/Http/Controllers/PermohonanController.php @@ -66,13 +66,13 @@ { $permohonan = Permohonan::find($id); $branches = Branch::all(); - $debitures = Debiture::all(); + $debitur = Debiture::find($permohonan->debiture_id); $tujuanPenilaian = TujuanPenilaian::all(); $status = StatusPermohonan::all(); return view( 'lpj::permohonan.form', - compact('permohonan', 'branches', 'debitures', 'tujuanPenilaian', 'status'), + compact('permohonan', 'branches', 'debitur', 'tujuanPenilaian', 'status'), ); } diff --git a/app/Http/Requests/JenisJaminanRequest.php b/app/Http/Requests/JenisJaminanRequest.php index 0295054..6f0325c 100644 --- a/app/Http/Requests/JenisJaminanRequest.php +++ b/app/Http/Requests/JenisJaminanRequest.php @@ -2,8 +2,9 @@ namespace Modules\Lpj\Http\Requests; - use Haruncpi\LaravelIdGenerator\IdGenerator; + use daengdeni\LaravelIdGenerator\IdGenerator; use Illuminate\Foundation\Http\FormRequest; + use Illuminate\Support\Str; class JenisJaminanRequest extends FormRequest { @@ -14,8 +15,10 @@ : array { return [ - 'code' => 'required|max:5', - 'name' => 'required|max:255', + 'code' => 'required|max:5', + 'name' => 'required|max:255', + 'slug' => 'required|max:255', + 'jenis_legalitas_jaminan_id' => 'nullable', ]; } @@ -35,8 +38,13 @@ $this->merge([ 'code' => IdGenerator::generate( ['table' => 'jenis_jaminan', 'length' => 5, 'prefix' => 'JJ', 'field' => 'code'], - ), + ) ]); } + + $this->merge([ + 'jenis_legalitas_jaminan_id' => json_encode($this->jenis_legalitas_jaminan_id), + 'slug' => Str::slug($this->name), + ]); } } diff --git a/app/Http/Requests/JenisLegalitasJaminanRequest.php b/app/Http/Requests/JenisLegalitasJaminanRequest.php index b319443..1d5d98c 100644 --- a/app/Http/Requests/JenisLegalitasJaminanRequest.php +++ b/app/Http/Requests/JenisLegalitasJaminanRequest.php @@ -2,7 +2,9 @@ namespace Modules\Lpj\Http\Requests; + use daengdeni\LaravelIdGenerator\IdGenerator; use Illuminate\Foundation\Http\FormRequest; + use Illuminate\Support\Str; class JenisLegalitasJaminanRequest extends FormRequest { @@ -12,16 +14,11 @@ public function rules() : array { - $rules = [ + return [ + 'code' => 'required|max:6', 'name' => 'required|max:255', + 'slug' => 'required|max:255', ]; - - if ($this->method() == 'PUT') { - $rules['code'] = 'required|max:50|unique:jenis_legalitas_jaminan,code,' . $this->id; - } else { - $rules['code'] = 'required|max:50|unique:jenis_legalitas_jaminan,code'; - } - return $rules; } /** @@ -32,4 +29,20 @@ { return true; } + + public function prepareForValidation() + { + if($this->method() == 'POST' && $this->code == null) { + $this->merge([ + 'code' => IdGenerator::generate( + ['table' => 'jenis_legalitas_jaminan', 'length' => 6, 'prefix' => 'JLJ', 'field' => 'code'], + ), + 'slug' => Str::slug($this->name), + ]); + } else { + $this->merge([ + 'slug' => Str::slug($this->name), + ]); + } + } } diff --git a/app/Models/JenisJaminan.php b/app/Models/JenisJaminan.php index 1820e50..43ab899 100644 --- a/app/Models/JenisJaminan.php +++ b/app/Models/JenisJaminan.php @@ -2,10 +2,8 @@ namespace Modules\Lpj\Models; - use Modules\Lpj\Database\Factories\JenisJaminanFactory; - class JenisJaminan extends Base { protected $table = 'jenis_jaminan'; - protected $fillable = ['code', 'name']; + protected $fillable = ['code', 'name','slug','jenis_legalitas_jaminan_id']; } diff --git a/app/Models/JenisLegalitasJaminan.php b/app/Models/JenisLegalitasJaminan.php index 8275104..2d7567c 100644 --- a/app/Models/JenisLegalitasJaminan.php +++ b/app/Models/JenisLegalitasJaminan.php @@ -7,5 +7,5 @@ class JenisLegalitasJaminan extends Base { protected $table = 'jenis_legalitas_jaminan'; - protected $fillable = ['code', 'name']; + protected $fillable = ['code', 'name','slug']; } diff --git a/database/migrations/2024_09_04_082053_update_jenis_legalitas_jaminan_table.php b/database/migrations/2024_09_04_082053_update_jenis_legalitas_jaminan_table.php new file mode 100644 index 0000000..f10bd3a --- /dev/null +++ b/database/migrations/2024_09_04_082053_update_jenis_legalitas_jaminan_table.php @@ -0,0 +1,28 @@ +string('slug')->nullable()->after('name'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('jenis_legalitas_jaminan', function (Blueprint $table) { + $table->dropColumn('slug'); + }); + } +}; diff --git a/database/migrations/2024_09_04_082059_update_jenis_jaminan_table.php b/database/migrations/2024_09_04_082059_update_jenis_jaminan_table.php new file mode 100644 index 0000000..0f96b67 --- /dev/null +++ b/database/migrations/2024_09_04_082059_update_jenis_jaminan_table.php @@ -0,0 +1,28 @@ +string('jenis_legalitas_jaminan_id')->nullable()->after('slug'); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('jenis_jaminan', function (Blueprint $table) { + $table->dropColumn('jenis_legalitas_jaminan_id'); + }); + } +}; diff --git a/module.json b/module.json index de8b0cc..559e479 100644 --- a/module.json +++ b/module.json @@ -115,16 +115,16 @@ "roles": [] }, { - "title": "Jenis Jaminan", - "path": "basicdata.jenis-jaminan", + "title": "Jenis Legalitas Jaminan", + "path": "basicdata.jenis-legalitas-jaminan", "classes": "", "attributes": [], "permission": "", "roles": [] }, { - "title": "Jenis Legalitas Jaminan", - "path": "basicdata.jenis-legalitas-jaminan", + "title": "Jenis Jaminan", + "path": "basicdata.jenis-jaminan", "classes": "", "attributes": [], "permission": "", diff --git a/resources/views/arah_mata_angin/create.blade.php b/resources/views/arah_mata_angin/create.blade.php index 604546d..e3bc5c9 100644 --- a/resources/views/arah_mata_angin/create.blade.php +++ b/resources/views/arah_mata_angin/create.blade.php @@ -29,7 +29,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/branch/create.blade.php b/resources/views/branch/create.blade.php index 45dcaf7..f9cb3b7 100644 --- a/resources/views/branch/create.blade.php +++ b/resources/views/branch/create.blade.php @@ -29,7 +29,7 @@ Code
- + @error('code') {{ $message }} @enderror @@ -40,7 +40,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/currency/create.blade.php b/resources/views/currency/create.blade.php index f0a77a7..c8b8f03 100644 --- a/resources/views/currency/create.blade.php +++ b/resources/views/currency/create.blade.php @@ -29,7 +29,7 @@ Code
- + @error('code') {{ $message }} @enderror @@ -40,7 +40,7 @@ Name
- + @error('name') {{ $message }} @enderror @@ -51,7 +51,7 @@ Decimal Places
- + @error('decimal_places') {{ $message }} @enderror diff --git a/resources/views/debitur/components/debitur.blade.php b/resources/views/debitur/components/debitur.blade.php index 0e22694..8170af7 100644 --- a/resources/views/debitur/components/debitur.blade.php +++ b/resources/views/debitur/components/debitur.blade.php @@ -8,7 +8,7 @@ Cabang
- @foreach($branches as $branch) @if(isset($debitur)) @@ -29,7 +29,7 @@ CIF
- + @error('cif') {{ $message }} @enderror @@ -40,7 +40,7 @@ Nomor Rekening
- + @error('nomor_rekening') {{ $message }} @enderror @@ -51,7 +51,7 @@ Nama Debitur
- + @error('name') {{ $message }} @enderror @@ -62,7 +62,7 @@ NPWP
- + @error('npwp') {{ $message }} @enderror @@ -73,7 +73,7 @@ Email
- + @error('email') {{ $message }} @enderror @@ -84,7 +84,7 @@ No Handphone
- + @error('phone') {{ $message }} @enderror @@ -97,7 +97,7 @@
- @foreach($provinces as $province) @if(isset($debitur)) @@ -116,7 +116,7 @@ @enderror
- @if(isset($cities)) @foreach($cities as $city) @@ -140,7 +140,7 @@
- @if(isset($districts)) @foreach($districts as $district) @@ -162,7 +162,7 @@ @enderror
- @if(isset($villages)) @foreach($villages as $village) @@ -184,14 +184,14 @@ @enderror
- + @error('postal_code') {{ $message }} @enderror
- + @error('address') {{ $message }} @enderror diff --git a/resources/views/debitur/components/dokumen.blade.php b/resources/views/debitur/components/dokumen.blade.php index 91b2827..5c77732 100644 --- a/resources/views/debitur/components/dokumen.blade.php +++ b/resources/views/debitur/components/dokumen.blade.php @@ -19,7 +19,7 @@
- @if(isset($pemilikJaminan)) @@ -56,7 +56,7 @@ Jenis Jaminan
- @foreach($jenisJaminan as $row) @if(isset($document)) @@ -78,7 +78,7 @@ Jenis Legalitas Jaminan
- @foreach($jenisLegalitasJaminan as $row) @if(isset($document)) @@ -101,7 +101,7 @@ Nama Dokumen
- + @error('name') {{ $message }} @enderror @@ -113,7 +113,7 @@ Dokumen Jaminan
- + @if(isset($document->dokumen_jaminan)) {{ basename($document->dokumen_jaminan) }} @@ -129,7 +129,7 @@ Keterangan
- + @error('keterangan') {{ $message }} @enderror @@ -143,7 +143,7 @@
- @foreach($provinces as $province) @if(isset($document)) @@ -155,14 +155,14 @@ {{ $province->name }} @endif - @endforeach + ; @endforeach @error('province_code') {{ $message }} @enderror
- @if(isset($cities)) @foreach($cities as $city) @@ -186,7 +186,7 @@
- @if(isset($districts)) @foreach($districts as $district) @@ -208,7 +208,7 @@ @enderror
- @if(isset($villages)) @foreach($villages as $village) @@ -230,14 +230,14 @@ @enderror
- + @error('postal_code') {{ $message }} @enderror
- + @error('address') {{ $message }} @enderror @@ -250,3 +250,32 @@
+ +@push('scripts') + +@endpush diff --git a/resources/views/debitur/create.blade.php b/resources/views/debitur/create.blade.php index 9b66b49..e31169b 100644 --- a/resources/views/debitur/create.blade.php +++ b/resources/views/debitur/create.blade.php @@ -13,6 +13,9 @@ {{ isset($debitur->id) ? 'Edit' : 'Tambah' }} Debitur
+ @if(isset($debitur->id)) + Buat Permohonan + @endif Back
diff --git a/resources/views/debitur/edit.blade.php b/resources/views/debitur/edit.blade.php index 8e2935a..0a8e218 100644 --- a/resources/views/debitur/edit.blade.php +++ b/resources/views/debitur/edit.blade.php @@ -15,6 +15,10 @@ Pemilk Jaminan
+ @if(isset($debitur->id)) + Buat Permohonan + @endif + @if(request()->get('from') == 'permohonan') Back @else diff --git a/resources/views/hubungan_pemilik_jaminan/create.blade.php b/resources/views/hubungan_pemilik_jaminan/create.blade.php index 7371af2..67fa2e9 100644 --- a/resources/views/hubungan_pemilik_jaminan/create.blade.php +++ b/resources/views/hubungan_pemilik_jaminan/create.blade.php @@ -29,7 +29,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/hubungan_penghuni_jaminan/create.blade.php b/resources/views/hubungan_penghuni_jaminan/create.blade.php index aa8b959..78e143b 100644 --- a/resources/views/hubungan_penghuni_jaminan/create.blade.php +++ b/resources/views/hubungan_penghuni_jaminan/create.blade.php @@ -29,7 +29,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/jenis_aset/create.blade.php b/resources/views/jenis_aset/create.blade.php index 29ce6f4..9f988bc 100644 --- a/resources/views/jenis_aset/create.blade.php +++ b/resources/views/jenis_aset/create.blade.php @@ -29,7 +29,7 @@ Code
- + @error('code') {{ $message }} @enderror @@ -40,7 +40,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/jenis_dokumen/create.blade.php b/resources/views/jenis_dokumen/create.blade.php index 1fd52f2..5a408f3 100644 --- a/resources/views/jenis_dokumen/create.blade.php +++ b/resources/views/jenis_dokumen/create.blade.php @@ -29,7 +29,7 @@ Name
- + @error('name') {{ $message }} @enderror @@ -40,7 +40,7 @@ Max Size
- + @error('max_size') {{ $message }} @enderror @@ -51,7 +51,7 @@ Description
- + @error('description') {{ $message }} @enderror diff --git a/resources/views/jenis_fasilitas_kredit/create.blade.php b/resources/views/jenis_fasilitas_kredit/create.blade.php index 6358c8b..fc4c2a6 100644 --- a/resources/views/jenis_fasilitas_kredit/create.blade.php +++ b/resources/views/jenis_fasilitas_kredit/create.blade.php @@ -29,7 +29,7 @@ Code
- + @error('code') {{ $message }} @enderror @@ -40,7 +40,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/jenis_jaminan/create.blade.php b/resources/views/jenis_jaminan/create.blade.php index e627502..ed04b81 100644 --- a/resources/views/jenis_jaminan/create.blade.php +++ b/resources/views/jenis_jaminan/create.blade.php @@ -24,28 +24,50 @@
-
- -
- - @error('code') - {{ $message }} - @enderror + @if(isset($jenisJaminan->id)) +
+ +
+ + @error('code') + {{ $message }} + @enderror +
-
+ @endif
- + @error('name') {{ $message }} @enderror
+ +
+ +
+ @foreach($jenisLegalitasJaminan as $row) + + @endforeach +
+
+ @if(isset($jenisLegalitasJaminan->id))
- + @error('code') {{ $message }} @enderror
+ @endif
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/nilai_plafond/create.blade.php b/resources/views/nilai_plafond/create.blade.php index 86507f5..c8b11af 100644 --- a/resources/views/nilai_plafond/create.blade.php +++ b/resources/views/nilai_plafond/create.blade.php @@ -29,7 +29,7 @@ Code
- + @error('code') {{ $message }} @enderror @@ -40,7 +40,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/resources/views/pemilik_jaminan/form.blade.php b/resources/views/pemilik_jaminan/form.blade.php index dc93241..cc39a92 100644 --- a/resources/views/pemilik_jaminan/form.blade.php +++ b/resources/views/pemilik_jaminan/form.blade.php @@ -45,7 +45,7 @@ Hubungan Pemilik Jaminan
- @if(isset($hubunganPemilik)) @foreach($hubunganPemilik as $hubungan) @@ -71,7 +71,7 @@ Nama Lengkap
- + @error('name') {{ $message }} @enderror @@ -82,7 +82,7 @@ Nomor ID/KTP
- + @error('nomor_id') {{ $message }} @enderror @@ -94,7 +94,7 @@ NPWP
- + @error('npwp') {{ $message }} @enderror @@ -105,7 +105,7 @@ Email
- + @error('email') {{ $message }} @enderror @@ -116,7 +116,7 @@ No Handphone
- + @error('phone') {{ $message }} @enderror @@ -130,7 +130,7 @@
- @foreach($provinces as $province) @if(isset($pemilik)) @@ -149,7 +149,7 @@ @enderror
- @if(isset($cities)) @foreach($cities as $city) @@ -173,7 +173,7 @@
- @if(isset($districts)) @foreach($districts as $district) @@ -195,7 +195,7 @@ @enderror
- @if(isset($villages)) @foreach($villages as $village) @@ -217,14 +217,14 @@ @enderror
- + @error('postal_code') {{ $message }} @enderror
- + @error('address') {{ $message }} @enderror diff --git a/resources/views/permohonan/create.blade.php b/resources/views/permohonan/create.blade.php index eaf9e31..4cf21c2 100644 --- a/resources/views/permohonan/create.blade.php +++ b/resources/views/permohonan/create.blade.php @@ -17,6 +17,10 @@
+
diff --git a/resources/views/permohonan/form.blade.php b/resources/views/permohonan/form.blade.php index 8dbe82f..8615b75 100644 --- a/resources/views/permohonan/form.blade.php +++ b/resources/views/permohonan/form.blade.php @@ -28,25 +28,8 @@ Debitur
- - @error('debiture_id') - {{ $message }} - @enderror + +

{{ $debitur->name }}

@@ -55,7 +38,7 @@ Tujuan Penilaian
- @if(isset($tujuanPenilaian)) @foreach($tujuanPenilaian as $row) @@ -82,7 +65,7 @@ Status Permohonan
- @if(isset($status)) @foreach($status as $row) diff --git a/resources/views/permohonan/index.blade.php b/resources/views/permohonan/index.blade.php index 50f3e19..23b267b 100644 --- a/resources/views/permohonan/index.blade.php +++ b/resources/views/permohonan/index.blade.php @@ -15,7 +15,7 @@
diff --git a/resources/views/status_permohonan/form.blade.php b/resources/views/status_permohonan/form.blade.php index a216493..2ed9ed3 100644 --- a/resources/views/status_permohonan/form.blade.php +++ b/resources/views/status_permohonan/form.blade.php @@ -27,7 +27,7 @@ Name
- + @error('name') {{ $message }} @enderror @@ -38,7 +38,7 @@ Description
- + @error('description') {{ $message }} @enderror diff --git a/resources/views/tujuan_penilaian/create.blade.php b/resources/views/tujuan_penilaian/create.blade.php index af070ee..45ee7f8 100644 --- a/resources/views/tujuan_penilaian/create.blade.php +++ b/resources/views/tujuan_penilaian/create.blade.php @@ -29,7 +29,7 @@ Code
- + @error('code') {{ $message }} @enderror @@ -40,7 +40,7 @@ Name
- + @error('name') {{ $message }} @enderror diff --git a/routes/breadcrumbs.php b/routes/breadcrumbs.php index 76419cc..f39cfcc 100644 --- a/routes/breadcrumbs.php +++ b/routes/breadcrumbs.php @@ -257,6 +257,11 @@ $trail->push('Tambah Permohonan', route('permohonan.create')); }); + Breadcrumbs::for('permohonan.create.debitur', function (BreadcrumbTrail $trail) { + $trail->parent('permohonan.index'); + $trail->push('Tambah Permohonan', route('permohonan.create')); + }); + Breadcrumbs::for('permohonan.edit', function (BreadcrumbTrail $trail) { $trail->parent('permohonan.index'); $trail->push('Data Permohonan'); diff --git a/routes/web.php b/routes/web.php index e32b1c8..d1737ef 100644 --- a/routes/web.php +++ b/routes/web.php @@ -49,6 +49,7 @@ Route::resource('jenis-legalitas-jaminan', JenisLegalitasJaminanController::class); Route::name('jenis-jaminan.')->prefix('jenis-jaminan')->group(function () { + Route::get('legalitas/{id}', [JenisJaminanController::class, 'legalitasJaminan'])->name('legalitas'); Route::get('restore/{id}', [JenisJaminanController::class, 'restore'])->name('restore'); Route::get('datatables', [JenisJaminanController::class, 'dataForDatatables']) ->name('datatables'); @@ -161,6 +162,7 @@ }); Route::name('permohonan.')->prefix('permohonan')->group(function () { + Route::get('{id}/create', [PermohonanController::class, 'createPermohonan'])->name('create.debitur'); Route::get('download/{id}', [PermohonanController::class, 'download'])->name('download'); Route::get('restore/{id}', [PermohonanController::class, 'restore'])->name('restore'); Route::get('datatables', [PermohonanController::class, 'dataForDatatables'])