Files
lpj/app/Exports/LaporanAdminKreditExport.php
Daeng Deni Mardaeni 831561b83b feat(laporan-admin-kredit): tambahkan fitur ekspor laporan admin kredit
- Menambahkan kelas LaporanAdminKreditExport untuk mengelola ekspor data ke Excel.
- Menambahkan metode export pada LaporanAdminKreditController untuk mengunduh laporan.
- Memperbarui tampilan untuk menambahkan tautan ekspor ke Excel.
- Menghapus kolom aksi yang tidak diperlukan dari tabel.
2025-03-17 12:34:13 +07:00

71 lines
1.9 KiB
PHP

<?php
namespace Modules\Lpj\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
use Modules\Lpj\Models\LaporanAdminKredit;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
class LaporanAdminKreditExport implements WithColumnFormatting, WithHeadings, FromCollection, WithMapping
{
public function collection()
{
return LaporanAdminKredit::with('debiture')->get();
}
public function map($row): array
{
return [
$row->id,
$row->debiture->cif,
$row->debiture->name,
$row->debiture->branch->name,
$row->kode_register_t24,
$row->jenis_agunan,
$row->bukti_kepemilikan,
$row->alamat_agunan,
$row->nama_pemilik,
$row->tanggal_kunjungan,
$row->nilai_pasar_wajar,
$row->nilai_likuidasi,
$row->nama_penilai,
$row->created_at
];
}
public function headings(): array
{
return [
'ID',
'CIF',
'Nama Debitur',
'Cabang',
'Kode Register T24',
'Jenis Agunan',
'Bukti Kepemilikan',
'Alamat Agunan',
'Nama Pemilik',
'Tanggal Kunjungan',
'Nilai Pasar Wajar',
'Nilai Likuidasi',
'Nama Penilai',
'Created At'
];
}
public function columnFormats(): array
{
return [
'A' => NumberFormat::FORMAT_NUMBER,
'B' => NumberFormat::FORMAT_NUMBER,
'J' => NumberFormat::FORMAT_DATE_DDMMYYYY,
'K' => NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1,
'L' => NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1,
'M' => NumberFormat::FORMAT_DATE_DATETIME,
];
}
}