From 580a3b4c203a0c8d46413e7d68c2fbd654261d78 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Thu, 13 Jun 2019 11:42:02 +0100 Subject: [PATCH] Bug 23115: Tweak display of totals on 'Fines and charges' page This patch tweaks the display of totals on the OPAC 'Fines and charges' page to clarify between the totals before and after applying credits. Test Plan: 1) Add some debts and credits to a patrons account 2) Look at the 'Fines and charges' page before applying the patch 3) Look at the 'Fines and charges' page after applying the patch 4) Varify the new layout is an improvment or not Signed-off-by: Martin Renvoize --- .../bootstrap/en/includes/account-table.inc | 46 +++++++++++++++++++ opac/opac-account.pl | 20 ++++---- 2 files changed, 57 insertions(+), 9 deletions(-) diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/account-table.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/account-table.inc index e2bb1a1b36..097435e4af 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/account-table.inc +++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/account-table.inc @@ -75,6 +75,52 @@ Total due [% total | $Price %] + [% IF outstanding_credits.total_outstanding < 0 %] + [% FOREACH outstanding_credit IN outstanding_credits %] + + [% IF ENABLE_OPAC_PAYMENTS %][% END %] + [% outstanding_credit.date | $KohaDates %] + + [% SWITCH outstanding_credit.accounttype %] + [% CASE 'Pay' %]Payment + [% CASE 'Pay00' %]Payment (cash via SIP2) + [% CASE 'Pay01' %]Payment (VISA via SIP2) + [% CASE 'Pay02' %]Payment (credit card via SIP2) + [% CASE 'VOID' %]Voided + [% CASE 'N' %]New card + [% CASE 'OVERDUE' %]Fine + [% CASE 'A' %]Account management fee + [% CASE 'M' %]Sundry + [% CASE 'L' %]Lost item + [% CASE 'W' %]Writeoff + [% CASE 'HE' %]Hold waiting too long + [% CASE 'Rent' %]Rental fee + [% CASE 'FOR' %]Forgiven + [% CASE 'LR' %]Lost item fee refund + [% CASE 'PF' %]Lost item processing fee + [% CASE 'PAY' %]Payment + [% CASE 'WO' %]Writeoff + [% CASE 'C' %]Credit + [% CASE 'CR' %]Credit + [%-CASE 'Res' %]Hold fee + [% CASE %][% outstanding_credit.accounttype | html %] + [%- END -%] + [%- PROCESS account_status_description account=outstanding_credit -%] + + + [%- IF outstanding_credit.payment_type %][% AuthorisedValues.GetByCode('PAYMENT_TYPE', outstanding_credit.payment_type, 1) | html %][% END %] + [%- IF outstanding_credit.description %][% outstanding_credit.description | html %][% END %] + [% IF outstanding_credit.itemnumber %]([% outstanding_credit.item.biblio.title | html %])[% END %] + + [% outstanding_credit.amount * -1 | $Price %] + [% outstanding_credit.amountoutstanding * -1 | $Price %] + + [% END %] + + Total due if credit applied: + [% total + outstanding_credits.total_outstanding | $Price %] + + [% END %] diff --git a/opac/opac-account.pl b/opac/opac-account.pl index 9c47e35755..d5677fc1b3 100755 --- a/opac/opac-account.pl +++ b/opac/opac-account.pl @@ -41,17 +41,19 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user( my $patron = Koha::Patrons->find( $borrowernumber ); my $account = $patron->account; -my $total = $account->balance; -my $accountlines = $account->lines; +my $accountlines = $account->lines->search({ amountoutstanding => { '>=' => 0 }}); +my $total_outstanding = $accountlines->total_outstanding; +my $outstanding_credits = $account->outstanding_credits; $template->param( - ACCOUNT_LINES => $accountlines, - total => $total, - accountview => 1, - message => scalar $query->param('message') || q{}, - message_value => scalar $query->param('message_value') || q{}, - payment => scalar $query->param('payment') || q{}, - payment_error => scalar $query->param('payment-error') || q{}, + ACCOUNT_LINES => $accountlines, + total => $total_outstanding, + outstanding_credits => $outstanding_credits, + accountview => 1, + message => scalar $query->param('message') || q{}, + message_value => scalar $query->param('message_value') || q{}, + payment => scalar $query->param('payment') || q{}, + payment_error => scalar $query->param('payment-error') || q{}, ); my $plugins_enabled = C4::Context->preference('UseKohaPlugins') && C4::Context->config("enable_plugins"); -- 2.20.1