Files
sembara/app/Http/Controllers/DeliveryNoteController.php

25 lines
695 B
PHP

<?php
namespace App\Http\Controllers;
use App\Services\OrderService;
use Barryvdh\DomPDF\Facade\Pdf;
use Symfony\Component\HttpFoundation\Response;
class DeliveryNoteController extends Controller
{
public function __invoke(string $orderId, OrderService $service): Response
{
$order = $service->deliveryNoteData($orderId);
$total = collect($order['order_items'] ?? [])->sum(fn ($item) => (int) ($item['subtotal'] ?? 0));
$pdf = Pdf::loadView('pdf.delivery-note', [
'order' => $order,
'total' => $total,
])->setPaper('a5', 'landscape');
return $pdf->stream(str_replace('/', '-', $order['note_number']).'.pdf');
}
}