%PDF- %PDF-
Direktori : /home/silvzytp/crm-dub-code/vendor/maatwebsite/excel/src/Jobs/ |
Current File : //home/silvzytp/crm-dub-code/vendor/maatwebsite/excel/src/Jobs/AppendDataToSheet.php |
<?php namespace Maatwebsite\Excel\Jobs; use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Queue\InteractsWithQueue; use Maatwebsite\Excel\Files\TemporaryFile; use Maatwebsite\Excel\Jobs\Middleware\LocalizeJob; use Maatwebsite\Excel\Writer; class AppendDataToSheet implements ShouldQueue { use Queueable, Dispatchable, ProxyFailures, InteractsWithQueue; /** * @var array */ public $data = []; /** * @var string */ public $temporaryFile; /** * @var string */ public $writerType; /** * @var int */ public $sheetIndex; /** * @var object */ public $sheetExport; /** * @param object $sheetExport * @param TemporaryFile $temporaryFile * @param string $writerType * @param int $sheetIndex * @param array $data */ public function __construct($sheetExport, TemporaryFile $temporaryFile, string $writerType, int $sheetIndex, array $data) { $this->sheetExport = $sheetExport; $this->data = $data; $this->temporaryFile = $temporaryFile; $this->writerType = $writerType; $this->sheetIndex = $sheetIndex; } /** * Get the middleware the job should be dispatched through. * * @return array */ public function middleware() { return (method_exists($this->sheetExport, 'middleware')) ? $this->sheetExport->middleware() : []; } /** * @param Writer $writer * * @throws \PhpOffice\PhpSpreadsheet\Exception * @throws \PhpOffice\PhpSpreadsheet\Reader\Exception */ public function handle(Writer $writer) { (new LocalizeJob($this->sheetExport))->handle($this, function () use ($writer) { $writer = $writer->reopen($this->temporaryFile, $this->writerType); $sheet = $writer->getSheetByIndex($this->sheetIndex); $sheet->appendRows($this->data, $this->sheetExport); $writer->write($this->sheetExport, $this->temporaryFile, $this->writerType); }); } }