Installation
1. composer require maatwebsite/excel
2.php artisan make:export YourExcelExport
3. php artisan make:controller ExcelController
path app/export and paste in your file
<?php
namespace App\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
class YourExportClassName implements FromCollection ,WithHeadings
{
/**
* @return \Illuminate\Support\Collection
*/
protected $data;
public function __construct($data)
{
$this->data = $data;
}
public function collection()
{
return $this->data;
}
public function headings(): array
{
// Define the headings for your Excel file here.
return [
'Name',
'Email',
'Employee ID',
'Designation',
'State',
'City',
'Department',
'Merchant Name',
'Merchant Shop Name',
'Merchant Pincode',
'Merchant Address',
'Merchant occupation'
];
}
}
4. this is your controller public function export()
{
$userData = Auth::user();
$data = User::join('survey_forms', 'users.id', '=', 'survey_forms.user_id')
->where('users.reporting_to', $userData->id)
->select('users.name','users.email','empid','designation','state','city','department', 'survey_forms.merchant_name','survey_forms.merchant_shop_name','survey_forms.pincode','survey_forms.address','survey_forms.occupation')
->get();
$fileName = 'example.xlsx';
Excel::store(new YourExportClassName($data), $fileName, 'public');
return response()->json(['download_url' => 'http::rebliss.in/sfa/storage/app/public/'.$fileName]);
}
5 . paste below command in your config/filesystem
'public' => [
'driver' => 'local',
'root' => public_path(),
'url' => env('APP_URL').'/storage',
'visibility' => 'public',
'throw' => false,
],
Comments
Post a Comment