From b3127a3d2e3eb5cd604c127d9e80cdab5dc8ba66 Mon Sep 17 00:00:00 2001 From: Lars Kusch Date: Thu, 16 May 2024 07:54:03 +0200 Subject: [PATCH] Fixes --- app/Jobs/EDocument/MergeEDocument.php | 8 +++----- app/Jobs/Entity/CreateRawPdf.php | 7 +++---- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/app/Jobs/EDocument/MergeEDocument.php b/app/Jobs/EDocument/MergeEDocument.php index 2642cb0ea6bc..2618111fd105 100644 --- a/app/Jobs/EDocument/MergeEDocument.php +++ b/app/Jobs/EDocument/MergeEDocument.php @@ -20,7 +20,7 @@ class MergeEDocument implements ShouldQueue public $deleteWhenMissingModels = true; - public function __construct(private object $document, private object $pdf_file) + public function __construct(private object $document, private string $pdf_file) { } @@ -35,7 +35,6 @@ class MergeEDocument implements ShouldQueue $settings_entity = ($this->document instanceof PurchaseOrder) ? $this->document->vendor : $this->document->client; $e_document_type = strlen($settings_entity->getSetting('e_invoice_type')) > 2 ? $settings_entity->getSetting('e_invoice_type') : "XInvoice_3_0"; - $e_quote_type = strlen($settings_entity->getSetting('e_quote_type')) > 2 ? $settings_entity->getSetting('e_quote_type') : "OrderX_Extended"; if ($this->document instanceof Invoice){ switch ($e_document_type) { @@ -49,9 +48,8 @@ class MergeEDocument implements ShouldQueue case "XInvoice-Extended": case "XInvoice-BasicWL": case "XInvoice-Basic": - $xml = (new CreateEDocument($this->document))->handle(); - (new ZugferdDocumentPdfBuilder($xml, $this->pdf_file))->generateDocument()->saveDocument($mergeToPdf); - return $mergeToPdf; + $xml = (new CreateEDocument($this->document, true))->handle(); + return(new ZugferdDocumentPdfBuilder($xml, $this->pdf_file))->generateDocument()->downloadString("Invoice.pdf"); default: return $this->pdf_file; diff --git a/app/Jobs/Entity/CreateRawPdf.php b/app/Jobs/Entity/CreateRawPdf.php index 684860e492e1..d5026bacfd92 100644 --- a/app/Jobs/Entity/CreateRawPdf.php +++ b/app/Jobs/Entity/CreateRawPdf.php @@ -16,7 +16,6 @@ use App\Jobs\EDocument\MergeEDocument; use App\Models\Credit; use App\Models\CreditInvitation; use App\Models\Invoice; -use App\Models\Company; use App\Models\InvoiceInvitation; use App\Models\PurchaseOrder; use App\Models\PurchaseOrderInvitation; @@ -41,7 +40,7 @@ class CreateRawPdf public Invoice | Credit | Quote | RecurringInvoice | PurchaseOrder $entity; - public Company $company; + public $company; public $contact; @@ -109,8 +108,8 @@ class CreateRawPdf $pdf = $ps->boot()->getPdf(); nlog("pdf timer = ". $ps->execution_time); - if ($this->company->getSetting("enable_e_invoice")){ - $pdf = (new MergeEDocument($this->entity))->handle(); + if ($this->entity_string == "invoice" && $this->entity->company->getSetting("enable_e_invoice")){ + $pdf = (new MergeEDocument($this->entity, $pdf))->handle(); } return $pdf;