Ensure payment types are returned

This commit is contained in:
David Bomba 2023-03-10 17:49:43 +11:00
parent 3286ff52ee
commit ab6dfc7ff5
5 changed files with 19 additions and 8 deletions

View File

@ -299,11 +299,14 @@ class Payment extends BaseModel
public function translatedType()
{
if (! $this->type) {
if (! $this->type_id) {
return '';
}
return ctrans('texts.payment_type_'.$this->type->name);
$pt = new PaymentType();
return $pt->name($this->type_id);
}
public function gateway_type()

View File

@ -148,4 +148,12 @@ class PaymentType extends StaticModel
return self::CREDIT_CARD_OTHER;
}
}
public function name($id)
{
if(isset($this->type_names[$id]))
return ctrans("texts.".$this->type_names[$id]);
return ctrans('texts.manual_entry');
}
}

View File

@ -244,7 +244,7 @@ class PdfBuilder
$element['elements'][] = ['element' => 'td', 'content' => $invoice->number];
$element['elements'][] = ['element' => 'td', 'content' => $this->translateDate($payment->date, $this->service->config->date_format, $this->service->config->locale) ?: ' '];
$element['elements'][] = ['element' => 'td', 'content' => $payment->type ? $payment->type->name : ctrans('texts.manual_entry')];
$element['elements'][] = ['element' => 'td', 'content' => $payment->translatedType()];
$element['elements'][] = ['element' => 'td', 'content' => $this->service->config->formatMoney($payment->pivot->amount) ?: ' '];
$tbody[] = $element;
@ -279,7 +279,7 @@ class PdfBuilder
return [
['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.amount_paid'), $this->service->config->formatMoney($this->payment_amount_total))],
['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.payment_method'), $payment->type ? $payment->type->name : ctrans('texts.manual_entry'))],
['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.payment_method'), $payment->translatedType())],
['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.payment_date'), $this->translateDate($payment->date, $this->service->config->date_format, $this->service->config->locale) ?: ' ')],
];
}

View File

@ -601,7 +601,7 @@ class Design extends BaseDesign
$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' => $payment->translatedType()];
$element['elements'][] = ['element' => 'td', 'content' => Number::formatMoney($payment->pivot->amount, $this->client) ?: ' '];
$tbody[] = $element;

View File

@ -49,16 +49,16 @@
</div>
@endif
@if(!empty($payment->type?->name) && !is_null($payment->type?->name))
<div class="px-4 py-5 bg-white sm:grid sm:grid-cols-3 sm:gap-4 sm:px-6">
<dt class="text-sm font-medium leading-5 text-gray-500">
{{ ctrans('texts.method') }}
</dt>
<dd class="mt-1 text-sm leading-5 text-gray-900 sm:mt-0 sm:col-span-2">
{{ $payment->type?->name }}
{{ $payment->translatedType() }}
</dd>
</div>
@endif
@if(!empty($payment->formattedAmount()) && !is_null($payment->formattedAmount()))
<div class="px-4 py-5 bg-white sm:grid sm:grid-cols-3 sm:gap-4 sm:px-6">