support for items

This commit is contained in:
2024-11-10 14:18:24 +05:00
parent b8b2ebbe46
commit c1af5e1b39
8 changed files with 79 additions and 32 deletions

View File

@@ -0,0 +1,53 @@
<?php
namespace App\Http\Controllers;
use App\Modules\Invoice\Actions\GenerateInvoiceExcell;
use App\Modules\Invoice\Data\InvoiceExcellData;
use App\Modules\Invoice\Data\InvoiceItem;
use Carbon\Carbon;
class HomeController extends Controller
{
public function index(): string
{
GenerateInvoiceExcell::make()
->setTemplateFile(app_path('Modules/Invoice/Resources/Docs/invoice.xls'))
->setData(new InvoiceExcellData(
number: random_int(1, 99),
date: new Carbon('2024-11-08'),
seller_firm_type: 'Telekeçi',
seller_firm_name: 'Nurmuhammet Allanov Parahatowiç',
seller_ssb: '201126532321',
seller_bank_name: 'Türkmenistanyň „Halkbank“ paýdarlar täjirçilik banky',
seller_bank_hb_1: '23206934160169902250000',
seller_bank_hb_2: '21101934110100700005000',
seller_bank_city: 'Aşgabat',
seller_bank_bab: '390101601',
buyer: 'Türkmenistanyň „Türkmenbaşy“ paýdarlar täjirçilik banky',
buyer_address: '744000 Aşgabat ş., Çandebil şaýoly köç., 121,',
buyer_bank: 'Türkmenistanyň Merkezi Banky',
buyer_bank_address: 'Aşgabat ş.',
buyer_bank_data: sprintf('şahsy salgyt belgisi %s, MFO %s, Hasap № %s', '101301000408', '390101304', '21101934110100300007000'),
items: [
new InvoiceItem(
name: 'Programma üpjünçiligini işläp taýýarlamak barada',
unit: 'ay',
quantity: 1,
unit_price: 25000,
vat: null,
excludingVat: null,
vat_percentage: null,
vat_tmt: null,
total: 25000,
),
]
))
->handle()
->save();
return 'F';
}
}