Update Module Permohonan, penambahan field jenis_fasilitas_kredit dan nilai_plafond

This commit is contained in:
Daeng Deni Mardaeni 2024-09-13 14:10:40 +07:00
parent dadec5a397
commit 72e4ff3160
6 changed files with 187 additions and 17 deletions

View File

@ -28,6 +28,8 @@
$row->branch->name, $row->branch->name,
$row->tujuanPenilaian->name, $row->tujuanPenilaian->name,
$row->debiture->name, $row->debiture->name,
$row->fasilitasKredit->name,
$row->plafond->name,
$row->status, $row->status,
$row->authorized_at, $row->authorized_at,
$row->authorized_status, $row->authorized_status,
@ -47,7 +49,9 @@
'Branch Pemohon', 'Branch Pemohon',
'Tujuan Penilaian', 'Tujuan Penilaian',
'Debitur', 'Debitur',
'Status', 'Jenis Fasilitas Kredit',
'Nilai Plafond',
'Status Permohonan',
'Tanggal Pengesahan', 'Tanggal Pengesahan',
'Status Pengesahan', 'Status Pengesahan',
'Pengesah', 'Pengesah',
@ -61,7 +65,8 @@
return [ return [
'A' => NumberFormat::FORMAT_NUMBER, 'A' => NumberFormat::FORMAT_NUMBER,
'C' => NumberFormat::FORMAT_DATE_DATETIME, 'C' => NumberFormat::FORMAT_DATE_DATETIME,
'L' => NumberFormat::FORMAT_DATE_DATETIME 'K' => NumberFormat::FORMAT_DATE_DATETIME,
'N' => NumberFormat::FORMAT_DATE_DATETIME
]; ];
} }
} }

View File

@ -15,6 +15,8 @@
use Modules\Lpj\Models\Branch; use Modules\Lpj\Models\Branch;
use Modules\Lpj\Models\Debiture; use Modules\Lpj\Models\Debiture;
use Modules\Lpj\Models\DokumenJaminan; use Modules\Lpj\Models\DokumenJaminan;
use Modules\Lpj\Models\JenisFasilitasKredit;
use Modules\Lpj\Models\NilaiPlafond;
use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Permohonan;
use Modules\Lpj\Models\StatusPermohonan; use Modules\Lpj\Models\StatusPermohonan;
use Modules\Lpj\Models\TujuanPenilaian; use Modules\Lpj\Models\TujuanPenilaian;
@ -30,8 +32,8 @@
public function store(PermohonanRequest $request) public function store(PermohonanRequest $request)
{ {
$validate = $request->validated();
$validate = $request->validated();
if ($validate) { if ($validate) {
try { try {
// Save to database // Save to database
@ -63,8 +65,13 @@
$debitur = Debiture::find($debitur); $debitur = Debiture::find($debitur);
$tujuanPenilaian = TujuanPenilaian::all(); $tujuanPenilaian = TujuanPenilaian::all();
$status = StatusPermohonan::all(); $status = StatusPermohonan::all();
$fasilitasKredit = JenisFasilitasKredit::all();
$plafond = NilaiPlafond::all();
return view('lpj::permohonan.form', compact('branches', 'debitur', 'tujuanPenilaian', 'status')); return view(
'lpj::permohonan.form',
compact('branches', 'debitur', 'tujuanPenilaian', 'status', 'fasilitasKredit', 'plafond'),
);
} }
public function edit($id) public function edit($id)
@ -80,6 +87,9 @@
$villages = Village::where('district_code', $debitur->district_code)->get(); $villages = Village::where('district_code', $debitur->district_code)->get();
$documents = DokumenJaminan::with('pemilik', 'detail')->where('debiture_id', $id)->get(); $documents = DokumenJaminan::with('pemilik', 'detail')->where('debiture_id', $id)->get();
$fasilitasKredit = JenisFasilitasKredit::all();
$plafond = NilaiPlafond::all();
return view( return view(
'lpj::permohonan.form', 'lpj::permohonan.form',
compact( compact(
@ -92,7 +102,9 @@
'cities', 'cities',
'districts', 'districts',
'villages', 'villages',
'documents' 'documents',
'fasilitasKredit',
'plafond',
), ),
); );
} }

View File

@ -21,6 +21,8 @@
'tujuan_penilaian_id' => 'required|exists:tujuan_penilaian,id', 'tujuan_penilaian_id' => 'required|exists:tujuan_penilaian,id',
'debiture_id' => 'required|exists:debitures,id', 'debiture_id' => 'required|exists:debitures,id',
'status' => 'required|string', 'status' => 'required|string',
'jenis_fasilitas_kredit_id' => 'required|exists:jenis_fasilitas_kredit,id',
'nilai_plafond_id' => 'required|exists:nilai_plafond,id',
]; ];
return $rules; return $rules;

View File

@ -18,6 +18,8 @@ class Permohonan extends Base
'tujuan_penilaian_id', 'tujuan_penilaian_id',
'debiture_id', 'debiture_id',
'keterangan', 'keterangan',
'jenis_fasilitas_kredit_id',
'nilai_plafond_id',
'status', 'status',
'authorized_at', 'authorized_at',
'authorized_status', 'authorized_status',
@ -44,4 +46,12 @@ class Permohonan extends Base
public function documents(){ public function documents(){
return $this->hasMany(DokumenJaminan::class); return $this->hasMany(DokumenJaminan::class);
} }
public function nilaiPlafond(){
return $this->belongsTo(NilaiPlafond::class);
}
public function jenisFasilitasKredit(){
return $this->belongsTo(JenisFasilitasKredit::class);
}
} }

View File

@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
use Modules\Lpj\Models\JenisFasilitasKredit;
use Modules\Lpj\Models\NilaiPlafond;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('permohonan', function (Blueprint $table) {
$table->foreignIdFor(JenisFasilitasKredit::class)->nullable()->onDelete('cascade');
$table->foreignIdFor(NilaiPlafond::class)->nullable()->onDelete('cascade');
$table->string('status')->default('order')->change();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('permohonan', function (Blueprint $table) {
$table->dropForeign(['fasilitas_kredit_id']);
$table->dropForeign(['nilai_plafond_id']);
});
}
};

View File

@ -74,6 +74,60 @@
</div> </div>
</div> </div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">
Fasilitas Kredit
</label>
<div class="flex flex-wrap items-baseline w-full">
<select class="input tomselect w-full @error('jenis_fasilitas_kredit_id') border-danger bg-danger-light @enderror" name="jenis_fasilitas_kredit_id" id="jenis_fasilitas_kredit_id">
<option value="">Pilih Fasilitas Kredit</option>
@if(isset($fasilitasKredit))
@foreach($fasilitasKredit as $row)
@if(isset($permohonan))
<option value="{{ $row->id }}" {{ isset($permohonan->jenis_fasilitas_kredit_id) && $permohonan->jenis_fasilitas_kredit_id == $row->id ?'selected' : '' }}>
{{ $row->name }}
</option>
@else
<option value="{{ $row->id }}">
{{ $row->name }}
</option>
@endif
@endforeach
@endif
</select>
@error('status')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">
Nilai Plafond
</label>
<div class="flex flex-wrap items-baseline w-full">
<select class="input tomselect w-full @error('nilai_plafond_id') border-danger bg-danger-light @enderror" name="nilai_plafond_id" id="nilai_plafond_id">
<option value="">Pilih Nilai Flafond</option>
@if(isset($plafond))
@foreach($plafond as $row)
@if(isset($permohonan))
<option value="{{ $row->id }}" {{ isset($permohonan->nilai_plafond_id) && $permohonan->nilai_plafond_id == $row->id ?'selected' : '' }}>
{{ $row->name }}
</option>
@else
<option value="{{ $row->id }}">
{{ $row->name }}
</option>
@endif
@endforeach
@endif
</select>
@error('status')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5"> <div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56"> <label class="form-label max-w-56">
Status Permohonan Status Permohonan
@ -174,12 +228,66 @@
</div> </div>
</div> </div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">
Fasilitas Kredit
</label>
<div class="flex flex-wrap items-baseline w-full">
<select class="input tomselect w-full @error('jenis_fasilitas_kredit_id') border-danger bg-danger-light @enderror" name="jenis_fasilitas_kredit_id" id="jenis_fasilitas_kredit_id">
<option value="">Pilih Fasilitas Kredit</option>
@if(isset($fasilitasKredit))
@foreach($fasilitasKredit as $row)
@if(isset($permohonan))
<option value="{{ $row->id }}" {{ isset($permohonan->jenis_fasilitas_kredit_id) && $permohonan->jenis_fasilitas_kredit_id == $row->id ?'selected' : '' }}>
{{ $row->name }}
</option>
@else
<option value="{{ $row->id }}">
{{ $row->name }}
</option>
@endif
@endforeach
@endif
</select>
@error('status')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56">
Nilai Plafond
</label>
<div class="flex flex-wrap items-baseline w-full">
<select class="input tomselect w-full @error('nilai_plafond_id') border-danger bg-danger-light @enderror" name="nilai_plafond_id" id="nilai_plafond_id">
<option value="">Pilih Nilai Flafond</option>
@if(isset($plafond))
@foreach($plafond as $row)
@if(isset($permohonan))
<option value="{{ $row->id }}" {{ isset($permohonan->nilai_plafond_id) && $permohonan->nilai_plafond_id == $row->id ?'selected' : '' }}>
{{ $row->name }}
</option>
@else
<option value="{{ $row->id }}">
{{ $row->name }}
</option>
@endif
@endforeach
@endif
</select>
@error('status')
<em class="alert text-danger text-sm">{{ $message }}</em>
@enderror
</div>
</div>
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5"> <div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
<label class="form-label max-w-56"> <label class="form-label max-w-56">
Status Permohonan Status Permohonan
</label> </label>
<div class="flex flex-wrap items-baseline w-full"> <div class="flex flex-wrap items-baseline w-full">
<select class="input tomselect w-full @error('branch_id') border-danger bg-danger-light @enderror" name="status" id="status"> <select class="input tomselect w-full @error('status') border-danger bg-danger-light @enderror" name="status" id="status">
<option value="">Pilih Status Permohonan</option> <option value="">Pilih Status Permohonan</option>
@if(isset($status)) @if(isset($status))
@foreach($status as $row) @foreach($status as $row)