From 10ac29be430e1aa784436902bcfec055cf9fbcd9 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 Signed-off-by: Josef Moravec --- C4/Circulation.pm | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-) diff --git a/C4/Circulation.pm b/C4/Circulation.pm index 9291cb7a60..c875bb50c7 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -1423,7 +1423,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 ); } # Record the fact that this book was issued. @@ -2871,26 +2872,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 @@ -3215,7 +3198,7 @@ sub _get_discount_from_rule { =cut sub AddIssuingCharge { - my ( $checkout, $charge ) = @_; + my ( $checkout, $charge, $description ) = @_; # FIXME What if checkout does not exist? @@ -3223,7 +3206,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.20.1