55 lines
2.0 KiB
PHP
55 lines
2.0 KiB
PHP
|
|
<?php
|
|||
|
|
|
|||
|
|
namespace App\Modules\Inventory\Exports;
|
|||
|
|
|
|||
|
|
use Maatwebsite\Excel\Concerns\FromCollection;
|
|||
|
|
use Maatwebsite\Excel\Concerns\WithHeadings;
|
|||
|
|
use Maatwebsite\Excel\Concerns\WithTitle;
|
|||
|
|
use Maatwebsite\Excel\Concerns\WithStyles;
|
|||
|
|
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
|
|||
|
|
|
|||
|
|
class InstructionSheet implements FromCollection, WithHeadings, WithTitle, WithStyles
|
|||
|
|
{
|
|||
|
|
public function title(): string
|
|||
|
|
{
|
|||
|
|
return '填寫說明';
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public function headings(): array
|
|||
|
|
{
|
|||
|
|
return [
|
|||
|
|
'欄位名稱',
|
|||
|
|
'是否必填',
|
|||
|
|
'填寫說明',
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public function collection()
|
|||
|
|
{
|
|||
|
|
return collect([
|
|||
|
|
['商品代號', '選填', '2-8 碼,若未填寫系統將自動生成。若代號已存在,將更新該商品資料。'],
|
|||
|
|
['條碼', '選填', '13 碼數字,若未填寫系統將自動生成。若條碼已存在(優先比對),將更新該商品資料。'],
|
|||
|
|
['商品名稱', '必填', '請填寫完整商品名稱。'],
|
|||
|
|
['類別名稱', '必填', '必須為系統中已存在的類別名稱(如:飲品)。'],
|
|||
|
|
['品牌', '選填', '商品品牌名稱。'],
|
|||
|
|
['規格', '選填', '商品規格描述(如:25kg/袋)。'],
|
|||
|
|
['基本單位', '必填', '必須為系統中已存在的單位名稱(如:瓶、個)。'],
|
|||
|
|
['大單位', '選填', '若有大單位換算請填寫(如:箱)。'],
|
|||
|
|
['換算率', '若有大單位則必填', '1 個大單位等於多少個基本單位。'],
|
|||
|
|
['成本價', '選填', '數字,預設為 0。'],
|
|||
|
|
['售價', '選填', '數字,預設為 0。'],
|
|||
|
|
['會員價', '選填', '數字,預設為 0。'],
|
|||
|
|
['批發價', '選填', '數字,預設為 0。'],
|
|||
|
|
]);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public function styles(Worksheet $sheet)
|
|||
|
|
{
|
|||
|
|
return [
|
|||
|
|
// 第一行標題粗體
|
|||
|
|
1 => ['font' => ['bold' => true]],
|
|||
|
|
// 欄位寬度自動
|
|||
|
|
];
|
|||
|
|
}
|
|||
|
|
}
|