Экспорт Excel с использованием Maatwebsite 3.1 в laravel 5,8 - PullRequest
0 голосов
/ 06 апреля 2020

Через ajax вызов необходимо экспортировать Maatwebsite \ Excel, и я использую laravel 5.7 и maatwebsite 3.1. Мой код: В сценарии:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

$.ajax({
    url: APP_URL + '/report/export-excel',
    method: "POST",
    //dataType: "json",
    data: {"data":data,"rtype":rtype},
    success: function(data) {
        console.log(data);
        location.href = APP_URL +data;
        console.log(data);

    },
});

В контроллере:

Excel::store($draw,'filename.xls', function($excel) use($draw) {
$excel->sheet('Backup', function($sheet) use($draw) {
$datasheet = array();
$datasheet[0]  =   array('Partner Name','Quote Id','Sales Order','Customer Name','Amount','Created Date','Expired Date');
$i=1;
if(count($draw)>0){
foreach($draw as $key=>$datanew){
    $datasheet[$i] = array(
    $datanew['partner_name'],
    $datanew['quote_name'],
    $datanew['sales_order_no'],
    $datanew['customer_name'],
    $datanew['created_at'],
    $datanew['expiry_date']
    );
    $i++;
}
}
$sheet->fromArray($datasheet, null, 'A1', false, false);
$sheet->setHeight(1, 30);
$sheet->cell('A1:S1', function($cell) {
$cell->setAlignment('center');
$cell->setFont(array(
'size'       => '14',
'bold'       =>  true
));
});
});

})->store('csv', '/public/uploads/pdf/', true);

Кажется, проблема версии. Обеспечить правильный синтаксис для maatwebsite 3.1.

...