|
Server : Apache/2.4.41 (Ubuntu) System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64 User : www-data ( 33) PHP Version : 8.2.12 Disable Function : NONE Directory : /var/www/lecturebazaar.com/app/Exports/ |
Upload File : |
<?php
namespace App\Exports;
use Illuminate\Support\Collection;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
class salesExport implements FromCollection, WithHeadings, WithMapping
{
protected $sales;
public function __construct($sales)
{
$this->sales = $sales;
}
/**
* @return Collection
*/
public function collection()
{
return $this->sales;
}
/**
* @inheritDoc
*/
public function headings(): array
{
return [
trans('admin/main.id'),
trans('admin/main.student'),
trans('admin/main.student') . ' ' . trans('admin/main.id'),
trans('admin/main.instructor'),
trans('admin/main.instructor') . ' ' . trans('admin/main.id'),
trans('admin/main.paid_amount'),
trans('admin/main.item'),
trans('admin/main.item') . ' ' . trans('admin/main.id'),
trans('admin/main.sale_type'),
trans('admin/main.date'),
trans('admin/main.status'),
];
}
/**
* @inheritDoc
*/
public function map($sale): array
{
if ($sale->payment_method == \App\Models\Sale::$subscribe) {
$paidAmount = trans('admin/main.subscribe');
} else {
if (!empty($sale->total_amount)) {
$paidAmount = handlePrice($sale->total_amount);
} else {
$paidAmount = trans('public.free');
}
}
$status = (!empty($sale->refund_at)) ? trans('admin/main.refund') : trans('admin/main.success');
return [
$sale->id,
!empty($sale->buyer) ? $sale->buyer->full_name : 'Deleted User',
!empty($sale->buyer) ? $sale->buyer->id : 'Deleted User',
$sale->item_seller,
$sale->seller_id,
$paidAmount,
$sale->item_title,
$sale->item_id,
trans('admin/main.' . $sale->type),
dateTimeFormat($sale->created_at, 'j M Y H:i'),
$status
];
}
}