From c4b5fca979c584a889ac4185c11f1eb48e48ba3b Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Tue, 13 Dec 2016 13:23:18 +0000 Subject: [PATCH] Bug 15985: Include transacting library in fines Some librarians would like to see the library an item was checked out from in the fines table on the fines payment page. Test Plan: 1) Apply this patch 2) Find a patron with overdue items that have fines 3) Browse to the pay fines page 4) Note the new "checked out from" column Signed-off-by: Jason Robb --- Koha/Checkout.pm | 14 +++++++++++++- .../intranet-tmpl/prog/en/modules/members/pay.tt | 10 +++++++--- members/pay.pl | 1 + t/db_dependent/Koha/Checkouts.t | 6 +++++- 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/Koha/Checkout.pm b/Koha/Checkout.pm index b7a752cdc5..2678c60f73 100644 --- a/Koha/Checkout.pm +++ b/Koha/Checkout.pm @@ -21,11 +21,12 @@ package Koha::Checkout; use Modern::Perl; use Carp; +use DateTime; use Koha::Database; -use DateTime; use Koha::DateUtils; use Koha::Items; +use Koha::Libraries; use base qw(Koha::Object); @@ -88,6 +89,17 @@ sub patron { return Koha::Patron->_new_from_dbic( $patron_rs ); } +=head library + +=cut + +sub library { + my ($self) = @_; + + my $library_rs = $self->_result->branch; + return Koha::Library->_new_from_dbic( $library_rs ); +} + =head3 type =cut 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 10796dd9f0..d8ed33fe9d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/pay.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/pay.tt @@ -46,6 +46,7 @@   Actions Account type + Checked out from Description Date Barcode @@ -83,6 +84,9 @@ [% PROCESS account_type_description account=line %] + + [% line.checkout.library.branchname %] + [%- IF line.description %][% line.description | html %][% END %] [% IF line.itemnumber %]([% line.item.biblio.title | html %])[% END %] @@ -118,18 +122,18 @@ [% IF outstanding_credits.total_outstanding < 0 %] - Outstanding credits could be applied: + Outstanding credits could be applied: [% END %] [% IF ( account_grp.total ) %] - Sub total: + Sub total: [% account_grp.total | $Price %] [% END %] - Total due: + Total due: [% IF outstanding_credits.total_outstanding < 0 %] [% total + outstanding_credits.total_outstanding | $Price %] [% ELSE %] diff --git a/members/pay.pl b/members/pay.pl index dd7a1efb5f..15ba862622 100755 --- a/members/pay.pl +++ b/members/pay.pl @@ -39,6 +39,7 @@ use C4::Stats; use C4::Koha; use C4::Overdues; use Koha::Patrons; +use Koha::Checkouts; use Koha::Patron::Categories; use URI::Escape; diff --git a/t/db_dependent/Koha/Checkouts.t b/t/db_dependent/Koha/Checkouts.t index dfb90e42a8..3bfa8cd755 100644 --- a/t/db_dependent/Koha/Checkouts.t +++ b/t/db_dependent/Koha/Checkouts.t @@ -19,7 +19,7 @@ use Modern::Perl; -use Test::More tests => 7; +use Test::More tests => 9; use C4::Circulation; use Koha::Checkouts; @@ -50,6 +50,9 @@ my $new_checkout_2 = Koha::Checkout->new( } )->store; +is( $new_checkout_1->library->id, $library->{branchcode}, 'Got correct library for checkout1' ); +is( $new_checkout_2->library->id, $library->{branchcode}, 'Got correct library for checkout2' ); + like( $new_checkout_1->issue_id, qr|^\d+$|, 'Adding a new checkout should have set the issue_id' ); is( Koha::Checkouts->search->count, $nb_of_checkouts + 2, 'The 2 checkouts should have been added' ); @@ -125,5 +128,6 @@ subtest 'patron' => sub { $retrieved_checkout_1->delete; is( Koha::Checkouts->search->count, $nb_of_checkouts + 1, 'Delete should have deleted the checkout' ); + $schema->storage->txn_rollback; -- 2.20.1 (Apple Git-117)