unioil-mobile-api/app/Exports/ReportRegistrationExport.php

51 lines
1.3 KiB
PHP

<?php
namespace App\Exports;
use App\Contracts\RegistrationResourceInterface;
use Maatwebsite\Excel\Concerns\FromCollection;
use App\Libraries\ParameterHelper;
class ReportRegistrationExport implements FromCollection
{
private $register;
public function __construct(RegistrationResourceInterface $register)
{
$this->register = $register;
}
/**
* @return \Illuminate\Support\Collection
*/
public function collection()
{
$request = request();
$params = [
'page_size' => null,
'page' => null,
'date_start' => ($request->has('date_start') ? $request->get('date_start') : null),
'date_end' => ($request->has('date_end') ? $request->get('date_end') : null),
'sorting' => ParameterHelper::prepareSortingParameter($request)
];
$list = $this->register->report_registration($params, true);
$data = collect([['Date', 'Activated', 'Registered']]);
if($list->count())
{
foreach ($list as $key => $value) {
$data->push([
date('d-M-Y',strtotime($value->created_at)),
$value->activated == 0 ? "0" : $value->activated,
$value->registered == 0 ? "0" : $value->registered,
]);
}
}
return $data;
}
}