From a87302acbcd50861f169c7dd0333c1a2b456ea7e Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 20 Feb 2019 17:14:22 +0000 Subject: [PATCH] Bug 12166: Improve display of Reserve charges in patron account This patch makes changes to the way hold fees are recorded and displayed in the OPAC and staff client: - No English strings should be stored in the accountline description. - The accounttype code should be used to display what kind of charge it is. To test, apply the patch and go to the staff client: - Configure a patron category to have a hold fee. - Place one or more holds for a patron in that category. - On the patron's record, view Accounting -> Make a payment - There should be a separate column for "Account type" showing "Hold fee" for the hold charges. - There should be no "Res" or "Reserve Charge" text in the description column--just the title. - Switch to the "Transactions" tab. The display should be similar. - In the OPAC, log in as a patron who has hold fees on their account. - View the "your fines" page to confirm that the information is displayed correctly there as well. - Place a hold for a patron who incurs hold charges. - Log in to the self-checkout module as that patron and check out an item which will fulfill that hold. - The correct fine information should be saved to accountlines: A "Res" type with a description consisting only of the title. --- C4/Reserves.pm | 2 +- .../intranet-tmpl/prog/en/includes/accounts.inc | 1 + .../prog/en/modules/members/boraccount.tt | 9 +++--- .../intranet-tmpl/prog/en/modules/members/pay.tt | 32 ++++------------------ .../opac-tmpl/bootstrap/en/modules/opac-account.tt | 12 +++++--- opac/sco/sco-main.pl | 2 +- 6 files changed, 22 insertions(+), 36 deletions(-) diff --git a/C4/Reserves.pm b/C4/Reserves.pm index 974168f..6a5d290 100644 --- a/C4/Reserves.pm +++ b/C4/Reserves.pm @@ -584,7 +584,7 @@ sub ChargeReserveFee { accountno => $nextacctno, date => dt_from_string(), amount => $fee, - description => "Reserve Charge - $title", + description => $title, accounttype => 'Res', amountoutstanding => $fee, branchcode => $branchcode diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/accounts.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/accounts.inc index cf38823..6e8c2ba 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/accounts.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/accounts.inc @@ -21,6 +21,7 @@ [%- CASE 'WO' -%]Writeoff [%- CASE 'C' -%]Credit [%- CASE 'CR' -%]Credit + [%- CASE 'Res' -%]Hold fee [%- CASE -%][% account.accounttype | html %] [%- END -%] [%- END -%] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt index bd54ec7..d4d3a8e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tt @@ -44,6 +44,7 @@ Date + Account type Description of charges Home library Note @@ -58,10 +59,10 @@ [% account.date |$KohaDates %] + [% PROCESS account_type_description account=account %] - [% PROCESS account_type_description account=account %] - [%- IF account.payment_type %], [% AuthorisedValues.GetByCode('PAYMENT_TYPE', account.payment_type) | html %][% END %] - [%- IF account.description %], [% account.description | html %][% END %] + [%- IF account.payment_type %][% AuthorisedValues.GetByCode('PAYMENT_TYPE', account.payment_type) | html %][% END %] + [%- IF account.description %][% account.description | html %][% END %]  [% IF ( account.itemnumber ) %][% account.item.biblio.title | html %][% END %] [% IF account.itemnumber %][% Branches.GetName( account.item.homebranch ) | html %][% END %] [% account.note | html_line_break %] @@ -83,7 +84,7 @@ [% END %] - Total due + Total due [% IF ( totalcredit ) %] [% total | $Price %] [% ELSE %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/pay.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/pay.tt index 08350ab..cd1d2c9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/pay.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/pay.tt @@ -7,6 +7,7 @@ [% USE ColumnsSettings %] [% USE KohaDates %] [% SET footerjs = 1 %] +[% PROCESS 'accounts.inc' %] [% INCLUDE 'doc-head-open.inc' %] Koha › Patrons › Make a payment for [% patron.firstname | html %] [% patron.surname | html %] [% INCLUDE 'doc-head-close.inc' %] @@ -44,10 +45,10 @@   Actions + Account type Description Date Payment note - Account type Amount Amount outstanding @@ -77,30 +78,10 @@ - [% SWITCH line.accounttype %] - [% CASE 'Pay' %]Payment, thanks - [% CASE 'Pay00' %]Payment, thanks (cash via SIP2) - [% CASE 'Pay01' %]Payment, thanks (VISA via SIP2) - [% CASE 'Pay02' %]Payment, thanks (credit card via SIP2) - [% CASE 'N' %]New card - [% CASE 'F' %]Fine - [% CASE 'A' %]Account management fee - [% CASE 'M' %]Sundry - [% CASE 'L' %]Lost item - [% CASE 'W' %]Writeoff - [% CASE 'FU' %]Accruing fine - [% CASE 'HE' %]Hold waiting too long - [% CASE 'Rent' %]Rental fee - [% CASE 'FOR' %]Forgiven - [% CASE 'LR' %]Lost item fee refund - [% CASE 'PF' %]Processing fee - [% CASE 'PAY' %]Payment - [% CASE 'WO' %]Writeoff - [% CASE 'C' %]Credit - [% CASE 'CR' %]Credit - [% CASE %][% line.accounttype | html %] - [%- END -%] - [%- IF line.description %], [% line.description | html %][% END %] + [% PROCESS account_type_description account=line %] + + + [%- IF line.description %][% line.description | html %][% END %] [% IF line.title %]([% line.title | html %])[% END %] @@ -110,7 +91,6 @@ Add note - [% line.accounttype | html %] [% line.amount | $Price %] [% line.amountoutstanding | $Price %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-account.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-account.tt index 23229a0..e4ed1a6 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-account.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-account.tt @@ -75,6 +75,7 @@ [% IF ENABLE_OPAC_PAYMENTS %] [% END %] Date + Type Description Fine amount Amount outstanding @@ -84,9 +85,9 @@ [%- IF ENABLE_OPAC_PAYMENTS -%] - [%- SET COLSPAN = 4 -%] + [%- SET COLSPAN = 5 -%] [%- ELSE -%] - [%- SET COLSPAN = 3 -%] + [%- SET COLSPAN = 4 -%] [%- END -%] Total due [% total | $Price %] @@ -128,10 +129,13 @@ [% CASE 'WO' %]Writeoff [% CASE 'C' %]Credit [% CASE 'CR' %]Credit + [%- CASE 'Res' -%]Hold fee [% CASE %][% ACCOUNT_LINE.accounttype | html %] [%- END -%] - [%- IF ACCOUNT_LINE.payment_type %], [% AuthorisedValues.GetByCode('PAYMENT_TYPE', ACCOUNT_LINE.payment_type, 1) | html %][% END %] - [%- IF ACCOUNT_LINE.description %], [% ACCOUNT_LINE.description | html %][% END %] + + + [%- IF ACCOUNT_LINE.payment_type %][% AuthorisedValues.GetByCode('PAYMENT_TYPE', ACCOUNT_LINE.payment_type, 1) | html %][% END %] + [%- IF ACCOUNT_LINE.description %][% ACCOUNT_LINE.description | html %][% END %] [% IF ACCOUNT_LINE.title %]([% ACCOUNT_LINE.title | html %])[% END %] [% IF ( ACCOUNT_LINE.amountcredit ) %][% ELSE %][% END %][% ACCOUNT_LINE.amount | $Price %] diff --git a/opac/sco/sco-main.pl b/opac/sco/sco-main.pl index 841b59b..ec19954 100755 --- a/opac/sco/sco-main.pl +++ b/opac/sco/sco-main.pl @@ -229,7 +229,7 @@ elsif ( $patron and $op eq "checkout" ) { { borrowernumber => $borrower->{borrowernumber}, accounttype => 'Res', - description => 'Reserve Charge - ' . $item->biblio->title, + description => $item->biblio->title, date => $dtf->format_date(dt_from_string) } )->count, -- 2.1.4