From 97c3118b4e5a02930bd911039c147bf09f7f9681 Mon Sep 17 00:00:00 2001 From: Frank Schubert Date: Thu, 17 Apr 2025 15:28:36 +0200 Subject: [PATCH] PreorderBilling: now copying invoice PDFs to Fibu transfer dir --- .../PreorderBillingInvoice.php | 3 ++ .../PreorderBillingInvoiceController.php | 34 +++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/application/PreorderBillingInvoice/PreorderBillingInvoice.php b/application/PreorderBillingInvoice/PreorderBillingInvoice.php index 8c04df858..e40ed7795 100644 --- a/application/PreorderBillingInvoice/PreorderBillingInvoice.php +++ b/application/PreorderBillingInvoice/PreorderBillingInvoice.php @@ -172,6 +172,9 @@ RML Infrastruktur GmbH"; $tpl = new Layout(); $tpl->setTemplate("Emailtemplates/preorder-invoice/rml/invoice-email"); + if($this->owner_id) { + $tpl->setTemplate("Emailtemplates/preorder-invoice/rml/invoice-email-anb"); + } $pdf_vars = [ "invoice" => $this diff --git a/application/PreorderBillingInvoice/PreorderBillingInvoiceController.php b/application/PreorderBillingInvoice/PreorderBillingInvoiceController.php index 751d82bf9..d1454e3fd 100644 --- a/application/PreorderBillingInvoice/PreorderBillingInvoiceController.php +++ b/application/PreorderBillingInvoice/PreorderBillingInvoiceController.php @@ -874,6 +874,7 @@ class PreorderBillingInvoiceController extends mfBaseController { $csv .= "$csv_line\n"; + } /*echo $csv; @@ -902,6 +903,39 @@ class PreorderBillingInvoiceController extends mfBaseController { ]); $file->save(); + // save invoice PDFs to bmd export transfer path + foreach($invoices as $invoice) { + $pdf = $invoice->pdf; + if(!$pdf || !$pdf->name || !file_exists($pdf->getFullPath())) { + $ifile = PreorderBillingInvoiceFile::createFromInvoice($invoice); + if(!$ifile) { + $this->layout()->setFlash("Fehler beim PDF erstellen"); + $this->redirect("PreorderBillingInvoice"); + } + $pdf = $ifile->file; + } + + $pdf_file = false; + try { + $pdf_file = $pdf->getFullPath(); + } catch (Exception $e) { + $this->log->error(__METHOD__.": File for Invoice ".$invoice->id." not found"); + continue; + } + + if(!file_exists($pdf_file)) { + $this->log->error(__METHOD__.": Datei ".$pdf->filename." nicht gefunden"); + continue; + } + + // copy pdf file to bmd export transfer directory + $transfer_path = $netowner_config["bmd-export-transfer-path"]; + $transfer_file = "$transfer_path/".$invoice->invoice_number.".pdf"; + if(!copy($pdf_file, $transfer_file)) { + $this->log->error(__METHOD__.": Error copying ".$pdf_file." to ".$transfer_file); + } + } + // copy csv file to bmd export transfer directory $transfer_path = $netowner_config["bmd-export-transfer-path"]; $transfer_file = "$transfer_path/$filename";