load($inputFileName); $sheet = $spreadsheet->getActiveSheet(); $sheet->getPageSetup()->setOrientation(PageSetup::ORIENTATION_LANDSCAPE); $mafs = MafView::query()->get(); $i = 2; foreach ($mafs as $maf) { $sheet->setCellValue('A' . $i, $maf->id); $sheet->setCellValue('B' . $i, $maf->year); $sheet->setCellValue('C' . $i, $maf->district_name); $sheet->setCellValue('D' . $i, $maf->area_name); $sheet->setCellValue('E' . $i, $maf->object_address); $sheet->setCellValue('F' . $i, $maf->order_number); $sheet->setCellValue('G' . $i, $maf->status); $sheet->setCellValue('H' . $i, $maf->rfid); $sheet->setCellValue('I' . $i, $maf->factory_number); $sheet->setCellValue('J' . $i, (is_string($maf->manufacture_date)) ? DateHelper::ISODateToExcelDate($maf->manufacture_date) : ''); $sheet->setCellValue('K' . $i, $maf->statement_number); $sheet->setCellValue('L' . $i, (is_string($maf->statement_date)) ? DateHelper::ISODateToExcelDate($maf->statement_date) : ''); $sheet->setCellValue('M' . $i, $maf->upd_number); $sheet->setCellValue('N' . $i, $maf->nomenclature_number); $sheet->setCellValue('O' . $i, $maf->article); $sheet->setCellValue('P' . $i, $maf->name_tz); $sheet->setCellValue('Q' . $i, $maf->type_tz); $sheet->setCellValue('R' . $i, $maf->type); $sheet->setCellValue('S' . $i, $maf->manufacturer_name); $sheet->setCellValue('T' . $i, $maf->comment); $sheet->getStyle('J' . $i) ->getNumberFormat() ->setFormatCode(NumberFormat::FORMAT_DATE_DDMMYYYY); $sheet->getStyle('L' . $i) ->getNumberFormat() ->setFormatCode(NumberFormat::FORMAT_DATE_DDMMYYYY); $i++; } $sheet->getStyle('A1:T' . $i - 1)->getBorders()->getAllBorders()->setBorderStyle(Border::BORDER_THIN)->setColor(new Color('777777')); $fileName = 'export_mafs_' . date('Y-m-d_H-i-s') . '.xlsx'; $writer = new Xlsx($spreadsheet); $fd = 'export'; Storage::disk('public')->makeDirectory($fd); $fp = storage_path('app/public/export/') . $fileName; Storage::disk('public')->delete($fd . '/' . $fileName); $writer->save($fp); // create zip archive $fileModel = File::query()->create([ 'link' => url('/storage/') . '/export/' . $fileName, 'path' => $fp, 'user_id' => $userId, 'original_name' => $fileName, 'mime_type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', ]); // return link return $fileName; } }