From 3cf13a3b5728329bbf038d7062464586bba28802 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Thu, 24 Mar 2022 12:42:52 +1100 Subject: [PATCH] Fixes for statements displaying payments per invoice --- app/Models/Paymentable.php | 1 + app/Services/PdfMaker/Design.php | 23 ++++++++++++++++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/app/Models/Paymentable.php b/app/Models/Paymentable.php index 745bea448294..f271c423446a 100644 --- a/app/Models/Paymentable.php +++ b/app/Models/Paymentable.php @@ -43,4 +43,5 @@ class Paymentable extends Pivot { return $this->belongsTo(Payment::class); } + } diff --git a/app/Services/PdfMaker/Design.php b/app/Services/PdfMaker/Design.php index 12bb0b80517f..02e7a03a3b88 100644 --- a/app/Services/PdfMaker/Design.php +++ b/app/Services/PdfMaker/Design.php @@ -428,16 +428,33 @@ class Design extends BaseDesign $tbody = []; - foreach ($this->payments as $payment) { - foreach ($payment->invoices as $invoice) { + // foreach ($this->payments as $payment) { + // foreach ($payment->invoices as $invoice) { + // $element = ['element' => 'tr', 'elements' => []]; + + // $element['elements'][] = ['element' => 'td', 'content' => $invoice->number]; + // $element['elements'][] = ['element' => 'td', 'content' => $this->translateDate($payment->date, $this->client->date_format(), $this->client->locale()) ?: ' ']; + // $element['elements'][] = ['element' => 'td', 'content' => $payment->type ? $payment->type->name : ctrans('texts.manual_entry')]; + // $element['elements'][] = ['element' => 'td', 'content' => Number::formatMoney($payment->amount, $this->client) ?: ' ']; + + // $tbody[] = $element; + // } + // } + + + //24-03-2022 show payments per invoice + foreach ($this->invoices as $invoice) { + foreach ($invoice->payments as $payment) { + $element = ['element' => 'tr', 'elements' => []]; $element['elements'][] = ['element' => 'td', 'content' => $invoice->number]; $element['elements'][] = ['element' => 'td', 'content' => $this->translateDate($payment->date, $this->client->date_format(), $this->client->locale()) ?: ' ']; $element['elements'][] = ['element' => 'td', 'content' => $payment->type ? $payment->type->name : ctrans('texts.manual_entry')]; - $element['elements'][] = ['element' => 'td', 'content' => Number::formatMoney($payment->amount, $this->client) ?: ' ']; + $element['elements'][] = ['element' => 'td', 'content' => Number::formatMoney($payment->pivot->amount, $this->client) ?: ' ']; $tbody[] = $element; + } }