From 8f745a4c0a555a4562f9aad49e17d12421e029a6 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Thu, 1 Nov 2018 13:28:25 +0000 Subject: [PATCH] Bug 21721: Use Koha::Account->add_debit in AddRenewal Known Side Effect: Prior to this patch renewal charges were not recorded in the FinesLog. After this patch, if the FinesLog is enabled then the 'action' will be recorded as `create_rent`. Sponsored-by: PTFS Europe --- C4/Circulation.pm | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-) diff --git a/C4/Circulation.pm b/C4/Circulation.pm index cf513e2ae7..fc614598bf 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -1411,7 +1411,8 @@ sub AddIssue { # If it costs to borrow this book, charge it to the patron's account. my ( $charge, $itemtype ) = GetIssuingCharges( $item->{'itemnumber'}, $borrower->{'borrowernumber'} ); if ( $charge > 0 ) { - AddIssuingCharge( $issue, $charge ); + my $description = "Rental"; + AddIssuingCharge( $issue, $charge, $description ); $item->{'charge'} = $charge; } @@ -2878,26 +2879,8 @@ sub AddRenewal { # Charge a new rental fee, if applicable? my ( $charge, $type ) = GetIssuingCharges( $itemnumber, $borrowernumber ); if ( $charge > 0 ) { - my $accountno = C4::Accounts::getnextacctno( $borrowernumber ); - my $manager_id = 0; - $manager_id = C4::Context->userenv->{'number'} if C4::Context->userenv; - my $branchcode = C4::Context->userenv ? C4::Context->userenv->{'branch'} : undef; - Koha::Account::Line->new( - { - date => dt_from_string(), - borrowernumber => $borrowernumber, - accountno => $accountno, - amount => $charge, - manager_id => $manager_id, - accounttype => 'Rent', - amountoutstanding => $charge, - itemnumber => $itemnumber, - branchcode => $branchcode, - description => 'Renewal of Rental Item ' - . $biblio->title - . " $item->{'barcode'}", - } - )->store(); + my $description = "Renewal of Rental Item " . $biblio->title . " $item->{'barcode'}"; + AddIssuingCharge($issue, $charge, $description); } # Send a renewal slip according to checkout alert preferencei @@ -3222,7 +3205,7 @@ sub _get_discount_from_rule { =cut sub AddIssuingCharge { - my ( $checkout, $charge ) = @_; + my ( $checkout, $charge, $description ) = @_; # FIXME What if checkout does not exist? @@ -3230,7 +3213,7 @@ sub AddIssuingCharge { my $accountline = $account->add_debit( { amount => $charge, - description => 'Rental', + description => $description, note => undef, user_id => C4::Context->userenv ? C4::Context->userenv->{'number'} : 0, library_id => C4::Context->userenv ? C4::Context->userenv->{'branch'} : undef, -- 2.19.2