load($inputFileName); $sheet = $spreadsheet->getActiveSheet(); $sheet->getPageSetup()->setOrientation(PageSetup::ORIENTATION_LANDSCAPE); $sheet->setCellValue('A1', 'МАФ площадки ' . $order->common_name); $i = 3; foreach ($order->products_sku as $sku) { $mnfDate = ($sku->manufacture_date) ? DateHelper::getHumanDate($sku->manufacture_date, true) : ''; $sheet->setCellValue('A' . $i, $sku->product->article); $sheet->setCellValue('B' . $i, $sku->product->nomenclature_number); $sheet->setCellValue('C' . $i, $sku->status); $sheet->setCellValue('D' . $i, $sku->maf_order?->order_number); $sheet->setCellValue('E' . $i, $sku->rfid); $sheet->setCellValue('F' . $i, $sku->factory_number); $sheet->setCellValue('G' . $i, $mnfDate); $sheet->setCellValue('H' . $i, ($sku->maf_order?->order_number) ? 'Да' : 'Нет'); $sheet->setCellValue('I' . $i, (!is_null($sku->passport_id)) ? 'Да' : 'Нет'); $i++; } $sheet->getStyle('A1:I' . $i - 1)->getBorders()->getAllBorders()->setBorderStyle(Border::BORDER_THIN)->setColor(new Color('777777')); $sheet->getStyle('A1:I' . $i - 1)->getAlignment()->setWrapText(true); $sheet->getStyle('A1:I' . $i - 1)->getAlignment()->setHorizontal(Alignment::HORIZONTAL_CENTER); $fileName = fileName('Площадка ' . $order->common_name . '.xlsx'); $writer = new Xlsx($spreadsheet); $fd = 'export/order/tmp'; Storage::disk('public')->makeDirectory($fd); $fp = storage_path('app/public/export/order/') . '/tmp/' . $fileName; Storage::disk('public')->delete($fd . '/' . $fileName); $writer->save($fp); PdfConverterClient::convert($fp); // create zip archive $fileModel = (new FileService())->createZipArchive($fd, Str::replace('.xlsx', '.zip', $fileName), $userId); // remove temp files Storage::disk('public')->deleteDirectory($fd); // return link return $fileModel?->link ?? ''; } }