Commit b8a8db70 authored by Alfonso Rafael Solis Rangel's avatar Alfonso Rafael Solis Rangel
Browse files

Obtener ambos archivos

parent bed644ad
Loading
Loading
Loading
Loading
+22 −1
Original line number Diff line number Diff line
@@ -11,7 +11,9 @@

use App\Exports\ContactosExport;
use Barryvdh\DomPDF\Facade\Pdf;
use Illuminate\Support\Facades\Storage;
use Maatwebsite\Excel\Facades\Excel;
use ZipArchive;

class ReporteController extends Controller
{
@@ -107,8 +109,27 @@ public function export(Request $request)
        }else if($request->archivo == 'pdf'){
            $pdf = Pdf::loadView('adminGen.contactos.contactos_pdf', ['contactos' => $export->collection()])->setPaper('A1', 'landscape');;
            return $pdf->download('contactos.pdf');
        }else if($request->archivo == 'ambos'){
            $excelPath = storage_path('app/public/contactos.xlsx');
            $pdfPath = storage_path('app/public/contactos.pdf');

            Excel::store($export, 'public/contactos.xlsx');
            $pdf = Pdf::loadView('adminGen.contactos.contactos_pdf', ['contactos' => $export->collection()])->setPaper('A1', 'landscape');
            Storage::put('public/contactos.pdf', $pdf->output());

            // Crear archivo ZIP
            $zipPath = storage_path('app/public/contactos.zip');
            $zip = new ZipArchive;
            if ($zip->open($zipPath, ZipArchive::CREATE | ZipArchive::OVERWRITE) === TRUE) {
                $zip->addFile($excelPath, 'contactos.xlsx');
                $zip->addFile($pdfPath, 'contactos.pdf');
                $zip->close();
            }

            // Descargar archivo ZIP
            return response()->download($zipPath)->deleteFileAfterSend(true);
        }else{
            return Excel::download(new ContactosExport($contactIds, $extraFields, $filters), 'contactos.xlsx');
            return response()->json(['Error, No seleccionaste un archivo de exportación valido.'], 400);
        }
    }