Perbaiki logika render dan optimasi query pada RegistrasiFinal

- Menambahkan pengecekan null pada kolom tujuan_penilaian_kjpp di file Blade untuk menghindari error.
- Mengubah query di controller dengan menggunakan query builder agar lebih efisien dan readable.
- Menambahkan left join untuk mendapatkan nama tujuan penilaian langsung dalam query.
This commit is contained in:
Daeng Deni Mardaeni
2024-12-30 11:46:03 +07:00
parent dfc5c73695
commit 2612082454
2 changed files with 10 additions and 7 deletions

View File

@@ -46,12 +46,11 @@
} }
// Retrieve data from the database // Retrieve data from the database
$query = PenawaranTender::with(['permohonan', 'tujuanPenilaianKjpp'])->whereHas( $query =PenawaranTender::query()
'permohonan', ->select('penawaran.*', 'tujuan_penilaian_kjpp.name as tujuan_penilaian_kjpp_name')
function ($q) { ->leftJoin('tujuan_penilaian_kjpp', 'tujuan_penilaian_kjpp.id','=','penawaran.tujuan_penilaian_kjpp_id')
$q->where('status', '=', 'spk'); ->where('penawaran.status','=','spk')
}, ->withCount('penawarandetails');
)->withCount('penawarandetails');
// Apply search filter if provided // Apply search filter if provided
if ($request->has('search') && !empty($request->get('search'))) { if ($request->has('search') && !empty($request->get('search'))) {

View File

@@ -125,7 +125,11 @@
tujuan_penilaian_kjpp_name: { tujuan_penilaian_kjpp_name: {
title: 'Tujuan Penilaian', title: 'Tujuan Penilaian',
render: (item, data) => { render: (item, data) => {
if(data.tujuan_penilaian_kjpp) {
return `${data.tujuan_penilaian_kjpp.name || ''}`; return `${data.tujuan_penilaian_kjpp.name || ''}`;
}
return "-";
}, },
}, },
nama_kjpp_sebelumnya: { nama_kjpp_sebelumnya: {