Merge branch 'staging' of https://git.putrakuningan.com/daengdeni/lpj into tender

This commit is contained in:
2025-04-24 08:42:49 +07:00
2 changed files with 74 additions and 44 deletions

View File

@@ -4,9 +4,9 @@
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Maatwebsite\Excel\Facades\Excel;
use Modules\Lpj\Exports\LaporanHasilPenilaianJaminanInternalExternalExport; use Modules\Lpj\Exports\LaporanHasilPenilaianJaminanInternalExternalExport;
use Modules\Lpj\Models\Permohonan; use Modules\Lpj\Models\Permohonan;
use Maatwebsite\Excel\Facades\Excel;
class LaporanHasilPenilaianJaminanInternalExternalController extends Controller class LaporanHasilPenilaianJaminanInternalExternalController extends Controller
{ {
@@ -47,7 +47,7 @@
} }
if (isset($search->penilai_id) && !empty($search->penilai_id)) { if (isset($search->penilai_id) && !empty($search->penilai_id)) {
$query->whereHas('penilaian._user_penilai.userPenilaiTeam', function($q) use ($search) { $query->whereHas('penilaian._user_penilai.userPenilaiTeam', function ($q) use ($search) {
$q->where('user_id', $search->penilai_id); $q->where('user_id', $search->penilai_id);
}); });
} }
@@ -123,25 +123,48 @@
'pemohon' => $permohonan->creator?->name, 'pemohon' => $permohonan->creator?->name,
'cif' => $permohonan->debiture->cif, 'cif' => $permohonan->debiture->cif,
'name' => $permohonan->debiture?->name, 'name' => $permohonan->debiture?->name,
'jenis_agunan' => $permohonan->documents?->pluck('jenisJaminan.name')->unique()->implode(', '), 'jenis_agunan' => $permohonan->documents?->pluck('jenisJaminan.name')
->unique()
->implode(', '),
'alamat_agunan' => $permohonan->documents?->map(function ($document) { 'alamat_agunan' => $permohonan->documents?->map(function ($document) {
return formatAlamat($document); return formatAlamat($document);
})->unique()->implode(', '), })->unique()->implode(', '),
'bukti_kepemilikan' => $permohonan->documents?->flatMap(function ($document) { 'bukti_kepemilikan' => (function() use ($permohonan) {
$legalitasItems = $permohonan->documents?->flatMap(function ($document) {
return $document->detail->map(function ($detail) { return $document->detail->map(function ($detail) {
return (!empty($detail->dokumen_nomor) && is_array($detail->dokumen_nomor)) // Jika tidak ada jenis legalitas jaminan, lewati
? ($detail->jenisLegalitasJaminan->name ?? '') . "\n" . implode(', ', $detail->dokumen_nomor) if (empty($detail->jenisLegalitasJaminan)) {
: null; return null;
}
// Hanya tampilkan detail yang memiliki dokumen_jaminan
if (empty($detail->dokumen_jaminan)) {
return null;
}
// Tampilkan nama legalitas jaminan saja
return $detail->jenisLegalitasJaminan->name ?? '';
}); });
})->filter()->unique()->implode(', '), })->filter()->unique()->values()->toArray();
'nama_pemilik' => $permohonan->documents?->pluck('pemilik.name')->unique()->implode(', '),
// Buat daftar bernomor
$result = '';
foreach ($legalitasItems as $index => $item) {
$result .= ($index + 1) . '. ' . $item . "\n";
}
return $result;
})(),
'nama_pemilik' => $permohonan->documents?->pluck('pemilik.name')
->unique()
->implode(', '),
'luas_tanah' => $luas_tanah . ' m²', 'luas_tanah' => $luas_tanah . ' m²',
'nilai_tanah' => formatRupiah($nilai_tanah,2), 'nilai_tanah' => formatRupiah($nilai_tanah, 2),
'luas_bangunan' => $luas_bangunan . ' m²', 'luas_bangunan' => $luas_bangunan . ' m²',
'nilai_bangunan' => formatRupiah($nilai_bangunan,2), 'nilai_bangunan' => formatRupiah($nilai_bangunan, 2),
'nilai_njop' => formatRupiah($permohonan->nilai_njop,2), 'nilai_njop' => formatRupiah($permohonan->nilai_njop, 2),
'nilai_pasar_wajar' => formatRupiah($npw,2), 'nilai_pasar_wajar' => formatRupiah($npw, 2),
'nilai_likuidasi' => formatRupiah($nilai_liquidasi,2), 'nilai_likuidasi' => formatRupiah($nilai_liquidasi, 2),
'tanggal_documen_diterima' => $permohonan->documents?->map(function ($document) { 'tanggal_documen_diterima' => $permohonan->documents?->map(function ($document) {
return $document->created_at->format('d-m-Y'); return $document->created_at->format('d-m-Y');
}), }),

View File

@@ -292,6 +292,13 @@
}, },
bukti_kepemilikan: { bukti_kepemilikan: {
title: 'Bukti Kepemilikan', title: 'Bukti Kepemilikan',
render: (item, data) => {
if (data.bukti_kepemilikan) {
// Ganti karakter baris baru dengan tag <br> untuk HTML
return data.bukti_kepemilikan.split('\n').join('<br>');
}
return '-';
},
}, },
nama_pemilik: { nama_pemilik: {
title: 'Nama Pemilik', title: 'Nama Pemilik',