fix(permohonan): ubah status_bayar menjadi nullable dan perbaiki tampilan form
- Mengubah validasi 'status_bayar' dari 'required' menjadi 'nullable'. - Menambahkan ID wrapper untuk 'status_bayar' di form. - Menyembunyikan atau menampilkan wrapper 'status_bayar' berdasarkan kondisi tertentu.
This commit is contained in:
@@ -23,7 +23,7 @@
|
|||||||
'status' => 'nullable|string',
|
'status' => 'nullable|string',
|
||||||
'jenis_fasilitas_kredit_id' => 'required|exists:jenis_fasilitas_kredit,id',
|
'jenis_fasilitas_kredit_id' => 'required|exists:jenis_fasilitas_kredit,id',
|
||||||
'nilai_plafond_id' => 'required|exists:nilai_plafond,id',
|
'nilai_plafond_id' => 'required|exists:nilai_plafond,id',
|
||||||
'status_bayar' => 'required|string',
|
'status_bayar' => 'nullable|string',
|
||||||
'nilai_njop' => 'nullable|numeric'
|
'nilai_njop' => 'nullable|numeric'
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -64,7 +64,7 @@
|
|||||||
@endphp
|
@endphp
|
||||||
|
|
||||||
@foreach($formFields as $field => $config)
|
@foreach($formFields as $field => $config)
|
||||||
<div class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
<div id="{{ $field }}_wrapper" class="flex items-baseline flex-wrap lg:flex-nowrap gap-2.5">
|
||||||
<label class="form-label max-w-56">{{ $config['label'] }}</label>
|
<label class="form-label max-w-56">{{ $config['label'] }}</label>
|
||||||
<div class="flex flex-wrap items-baseline w-full">
|
<div class="flex flex-wrap items-baseline w-full">
|
||||||
@if($config['type'] === 'select')
|
@if($config['type'] === 'select')
|
||||||
@@ -114,6 +114,7 @@
|
|||||||
const tujuanPenilaianSelect = document.getElementById('tujuan_penilaian_id');
|
const tujuanPenilaianSelect = document.getElementById('tujuan_penilaian_id');
|
||||||
const nilaiPlafondSelect = document.getElementById('nilai_plafond_id');
|
const nilaiPlafondSelect = document.getElementById('nilai_plafond_id');
|
||||||
const statusBayarSelect = document.getElementById('status_bayar');
|
const statusBayarSelect = document.getElementById('status_bayar');
|
||||||
|
const statusBayarWrapper = document.getElementById('status_bayar_wrapper');
|
||||||
|
|
||||||
// Initialize TomSelect
|
// Initialize TomSelect
|
||||||
const statusBayarTomSelect = new window.TomSelect(statusBayarSelect, {
|
const statusBayarTomSelect = new window.TomSelect(statusBayarSelect, {
|
||||||
@@ -131,16 +132,15 @@
|
|||||||
|
|
||||||
if (tujuanPenilaianValue === '2' && (nilaiPlafondValue === '2' || nilaiPlafondValue === '3')) {
|
if (tujuanPenilaianValue === '2' && (nilaiPlafondValue === '2' || nilaiPlafondValue === '3')) {
|
||||||
statusBayarTomSelect.setValue('sudah_bayar');
|
statusBayarTomSelect.setValue('sudah_bayar');
|
||||||
statusBayarTomSelect.disable();
|
statusBayarWrapper.style.display = 'none';
|
||||||
} else {
|
} else {
|
||||||
@if(isset($permohonan))
|
@if(isset($permohonan))
|
||||||
statusBayarTomSelect.setValue('{{$permohonan->status_bayar ?? ''}}');
|
statusBayarTomSelect.setValue('{{$permohonan->status_bayar ?? ''}}');
|
||||||
@else
|
@else
|
||||||
statusBayarTomSelect.setValue('');
|
statusBayarTomSelect.setValue('');
|
||||||
@endif
|
@endif
|
||||||
statusBayarTomSelect.enable();
|
statusBayarWrapper.style.display = 'flex';
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('Status Bayar:', statusBayarTomSelect.getValue());
|
console.log('Status Bayar:', statusBayarTomSelect.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user