fetchesTransaction = $fetchesTransaction; $this->fetchesCompany = $fetchesCompany; $this->createSupplierTransactionProcessor = $createSupplierTransactionProcessor; } /** * @param Request $request * @return string|\Symfony\Component\HttpFoundation\Response * @throws \App\Classes\Exceptions\MalformedRequestException */ public function execute(Request $request) { $transaction = $this->fetchesTransaction->execute(['id' => $request->route('id')]); $purchaseOrder = $transaction->owner()->transactions() ->where('type', TransactionType::PURCHASE_ORDER) ->complete() ->first(); $supplier = $this->fetchesCompany->execute(['id' => $transaction->receiver]); $pdf = LaravelMpdf::loadView('pages.pdfs.credit_note', ['transaction' => $transaction, 'po_order_transaction' => $purchaseOrder, 'supplier' => $supplier]); return $pdf->stream('MockUpWhiteForm.pdf'); } }