<?php
namespace App\Services\Export;
use App\Models\TestReportService;
use Illuminate\Contracts\Support\Responsable;
use Maatwebsite\Excel\Concerns\Exportable;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
use Maatwebsite\Excel\Concerns\WithEvents;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Events\AfterSheet;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
/**
* 记录导出
* Class TmpExport
* @package App\Services\Export
*/
class TmpExport implements FromCollection, Responsable, WithHeadings,WithEvents, WithColumnFormatting
{
use Exportable;
// 导出的文件名, 更多属性请参考github laravel-excel官方文档
private $fileName = 'Test.xls';
/**
* 要导出的数据
* @var array $data
*/
protected $data;
/**
* TeacherUserExport constructor.
* @param array $data
*/
public function __construct(array $data)
{
$this->data = $data;
}
// 导出标题
public function headings(): array
{
return [
'姓名',
'身份证号',
'姓名',
'姓名',
'姓名',
'姓名',
'姓名',
'姓名',
'姓名',
'姓名',
'姓名',
];
}
// 导出数据集
public function collection()
{
return collect($this->data);
}
public function columnFormats(): array
{
return [
'B' => '#0', //格式化保留0位
];
}
public function registerEvents(): array
{
return [
AfterSheet::class => function(AfterSheet $event) {
$event->sheet->getDelegate()->getColumnDimension('A')->setWidth('15');
$event->sheet->getDelegate()->getColumnDimension('B')->setWidth('30');
$event->sheet->getDelegate()->getColumnDimension('C')->setWidth('15');
$event->sheet->getDelegate()->getColumnDimension('D')->setWidth('13');
$event->sheet->getDelegate()->getColumnDimension('E')->setWidth('16');
$event->sheet->getDelegate()->getColumnDimension('F')->setWidth('15');
$event->sheet->getDelegate()->getColumnDimension('G')->setWidth('20');
$event->sheet->getDelegate()->getColumnDimension('H')->setWidth('15');
$event->sheet->getDelegate()->getColumnDimension('I')->setWidth('15');
$event->sheet->getDelegate()->getColumnDimension('J')->setWidth('20');
$event->sheet->getDelegate()->getColumnDimension('K')->setWidth('20');
},
];
}
}
laravel-excel 数字字段变成科学计数(真)
最新推荐文章于 2024-05-17 16:20:27 发布