Files
webstatement/app/Exports/JenisKartuExport.php
Daeng Deni Mardaeni 496d7f58c7 feat(webstatement): tambah fitur manajemen Jenis Kartu
- Menambahkan model, migrasi, seed, controller, request, dan tampilan untuk fitur Jenis Kartu.
- Menambahkan routing dan breadcrumbs untuk Jenis Kartu.
- Mengimplementasikan fungsi CRUD, ekspor data ke Excel, dan penghapusan multiple records pada Jenis Kartu.
- Memperbarui `module.json` untuk menampilkan menu Jenis Kartu di bagian Master.
- Menambah seeder untuk data awal Jenis Kartu.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-10 10:47:10 +07:00

68 lines
1.5 KiB
PHP

<?php
namespace Modules\Webstatement\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use Maatwebsite\Excel\Concerns\WithStyles;
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
use Modules\Webstatement\Models\JenisKartu;
class JenisKartuExport implements FromCollection, WithHeadings, WithMapping, ShouldAutoSize, WithStyles
{
/**
* @return \Illuminate\Support\Collection
*/
public function collection()
{
return JenisKartu::all();
}
/**
* @return array
*/
public function headings(): array
{
return [
'ID',
'Code',
'Name',
'Biaya',
'Authorized Status',
'Created At',
'Updated At'
];
}
/**
* @param mixed $row
* @return array
*/
public function map($row): array
{
return [
$row->id,
$row->code,
$row->name,
$row->biaya,
$row->authorized_status ? 'Yes' : 'No',
$row->created_at->format('Y-m-d H:i:s'),
$row->updated_at ? $row->updated_at->format('Y-m-d H:i:s') : '',
];
}
/**
* @param Worksheet $sheet
* @return array
*/
public function styles(Worksheet $sheet)
{
return [
// Style the first row as bold text
1 => ['font' => ['bold' => true]],
];
}
}