40 lines
1.1 KiB
PHP
40 lines
1.1 KiB
PHP
<?php
|
|
namespace App\Exports;
|
|
|
|
use App\Models\Siswa;
|
|
use Maatwebsite\Excel\Concerns\FromCollection;
|
|
use Maatwebsite\Excel\Concerns\WithHeadings;
|
|
|
|
class SiswaExport implements FromCollection, WithHeadings
|
|
{
|
|
public function collection()
|
|
{
|
|
return Siswa::with('kelas', 'user')->get()->map(function ($siswa) {
|
|
return [
|
|
'nisn' => $siswa->nisn,
|
|
'nama' => $siswa->nama,
|
|
'jenis_kelamin' => $siswa->jenis_kelamin,
|
|
'alamat' => $siswa->alamat,
|
|
'kelas' => $siswa->kelas->nama_kelas ?? '-',
|
|
'tingkat' => $siswa->kelas->tingkat ?? '-', // ← Tambahkan ini
|
|
'email' => $siswa->user->email ?? '-',
|
|
'password' => 'defaultpassword',
|
|
];
|
|
});
|
|
}
|
|
|
|
public function headings(): array
|
|
{
|
|
return [
|
|
'nisn',
|
|
'nama',
|
|
'jenis_kelamin',
|
|
'alamat',
|
|
'kelas',
|
|
'tingkat', // ← Tambahkan heading ini
|
|
'email',
|
|
'password'
|
|
];
|
|
}
|
|
}
|