refactor(noc): optimalkan kode dan penyederhanaan logika dalam controller dan view

- Perbaiki dan konsistenkan penulisan conditional pada `NocController`.
- Sederhanakan logika pengambilan dan mapping data di controller.
- Hapus penggunaan fungsi render di view untuk data yang sudah diolah di controller.
- Refactor partial query logic di `PembayaranController` untuk efisiensi.
This commit is contained in:
Daeng Deni Mardaeni
2025-05-04 05:53:05 +07:00
parent 5cdc4b08b3
commit d63108dea1
3 changed files with 19 additions and 55 deletions

View File

@@ -173,18 +173,20 @@
$filteredRecords = $query->count(); $filteredRecords = $query->count();
// Get the data for the current page // Get the data for the current page
$data = $query $data = $query->get();
->with(
[
'penawaran.permohonan.debiture',
'penawaran.permohonan.branch',
'permohonan.debiture',
'permohonan.branch',
'penawaran.detail',
'penawaran.persetujuan',
],
)->get();
$data = $data->map(function ($persetujuanPenawaran) {
return [
'id' => $persetujuanPenawaran->id,
'nomor_registrasi' => $persetujuanPenawaran->permohonan->nomor_registrasi ?? $persetujuanPenawaran->penawaran->nomor_registrasi,
'nama_debitur' => $persetujuanPenawaran->permohonan->debiture->name ?? $persetujuanPenawaran->penawaran->permohonan->debiture->name,
'cabang' => $persetujuanPenawaran->permohonan->branch->name ?? $persetujuanPenawaran->penawaran->permohonan->branch->name,
'tanggal_setor' => formatTanggalIndonesia($persetujuanPenawaran->created_at, true),
'nominal_bayar' => format_currency($persetujuanPenawaran->nominal_bayar ?? 0),
'bukti_ksl' => $persetujuanPenawaran->bukti_ksl ?? null,
'tanggal_penyelesaian' => formatTanggalIndonesia($persetujuanPenawaran->updated_at, true),
];
});
// Calculate the page count // Calculate the page count
$pageCount = ceil($totalRecords / $request->get('size')); $pageCount = ceil($totalRecords / $request->get('size'));

View File

@@ -263,8 +263,7 @@ class PembayaranController extends Controller
$subquery->select('permohonan_id') $subquery->select('permohonan_id')
->from('persetujuan_penawaran') ->from('persetujuan_penawaran')
->whereNotNull('permohonan_id'); ->whereNotNull('permohonan_id');
}) });
->orWhere('status', 'revisi-pembayaran');
}); });

View File

@@ -123,50 +123,19 @@
}, },
}, },
nomor_registrasi: { nomor_registrasi: {
title: 'Nomor Registrasi', title: 'Nomor Registrasi'
render: (item, data) => {
if(data.permohonan) {
return `${data.permohonan.nomor_registrasi}`;
} else if(data.penawaran) {
return `${data.penawaran.permohonan.nomor_registrasi}`;
}
return '';
},
}, },
nama_debitur: { nama_debitur: {
title: 'Nama Debitur', title: 'Nama Debitur',
render: (item, data) => {
if(data.permohonan) {
return `${data.permohonan.debiture.name}`;
} else if(data.penawaran) {
return `${data.penawaran.permohonan.debiture.name}`;
}
return '';
},
}, },
cabang: { cabang: {
title: 'Cabang', title: 'Cabang',
render: (item, data) => {
if(data.permohonan) {
return `${data.permohonan.branch.name}`;
} else if(data.penawaran) {
return `${data.penawaran.permohonan.branch.name}`;
}
return '';
},
}, },
tanggal_setor: { tanggal_setor: {
title: 'Tanggal Setor', title: 'Tanggal Setor',
render: (item, data) => {
return `${window.formatTanggalIndonesia(data.created_at)}`;
},
}, },
nominal_bayar: { nominal_bayar: {
title: 'Nominal Bayar', title: 'Nominal Bayar',
render: (item, data) => {
return `${window.formatRupiah(data.nominal_bayar)}`;
},
}, },
bukti_ksl: { bukti_ksl: {
title: 'Bukti KSL', title: 'Bukti KSL',
@@ -182,12 +151,6 @@
}, },
tanggal_penyelesaian: { tanggal_penyelesaian: {
title: 'Tanggal Penyelesaian', title: 'Tanggal Penyelesaian',
render: (item, data) => {
if(data.status==1) {
return `${window.formatTanggalIndonesia(data.updated_at)}`;
}
return "-";
},
}, },
actions: { actions: {
title: 'Action', title: 'Action',