Bug 18572 - Improper branchcode set during OPAC renewal

To test:
1 - Set 'OpacRenewalBranch' to various settings
2 - Renew an item for a ptron under each setting
3 - Confirm action_log entries reflect the correct branch for each
secnario
4 - prove t/db_dependent/Circulation/issue.t

Signed-off-by: David Kuhn <techservspec@gmail.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Mason James <mtj@kohaaloha.com>
This commit is contained in:
Nick Clemens 2017-06-23 12:27:19 +00:00 committed by Mason James
parent 9fb64ceb24
commit 74eee710dd
3 changed files with 24 additions and 4 deletions

View File

@ -2880,6 +2880,7 @@ sub AddRenewal {
my $branch = shift;
my $datedue = shift;
my $lastreneweddate = shift || DateTime->now(time_zone => C4::Context->tz)->ymd();
my $opacrenewal = shift;
my $item = GetItem($itemnumber) or return;
my $biblio = GetBiblioFromItemNumber($itemnumber) or return;
@ -2982,10 +2983,14 @@ sub AddRenewal {
DelUniqueDebarment({ borrowernumber => $borrowernumber, type => 'OVERDUES' });
}
# Log the renewal
unless ( $opacrenewal ) { #if from opac we are obeying OpacRenewalBranch as calculated in opac-renew.pl
$branch = C4::Context->userenv ? C4::Context->userenv->{branch} : $branch;
}
# Add the renewal to stats
UpdateStats(
{
branch => C4::Context->userenv ? C4::Context->userenv->{branch} : $branch,
branch => $branch,
type => 'renew',
amount => $charge,
itemnumber => $itemnumber,

View File

@ -82,7 +82,7 @@ else {
else {
$branchcode = 'OPACRenew';
}
AddRenewal( $borrowernumber, $itemnumber, $branchcode );
AddRenewal( $borrowernumber, $itemnumber, $branchcode, undef, undef, 1 );
push( @renewed, $itemnumber );
}
else {

View File

@ -17,7 +17,7 @@
use Modern::Perl;
use Test::More tests => 33;
use Test::More tests => 34;
use DateTime::Duration;
use t::lib::Mocks;
@ -232,6 +232,21 @@ like(
my $stat = $dbh->selectrow_hashref("SELECT * FROM statistics WHERE type = 'renew' AND borrowernumber = ? AND itemnumber = ? AND branch = ?", undef, $borrower_id1, $item_id1, $branchcode_3 );
ok( $stat, "Bug 17781 - 'Improper branchcode set during renewal' still fixed" );
#Let's do an opac renewal - whatever branchcode we send should be used
my $opac_renew_issue = $builder->build({ source=>"Issue",value=>{
date_due => '2017-01-01',
branch => $branchcode_1,
itype => $itemtype,
borrowernumber => $borrower_id1
}
});
my $datedue4 = AddRenewal( $opac_renew_issue->{borrowernumber}, $opac_renew_issue->{itemnumber}, "Stavromula", $datedue1, $daysago10, 1 );
$stat = $dbh->selectrow_hashref("SELECT * FROM statistics WHERE type = 'renew' AND borrowernumber = ? AND itemnumber = ? AND branch = ?", undef, $opac_renew_issue->{borrowernumber}, $opac_renew_issue->{itemnumber}, "Stavromula" );
ok( $stat, "Bug 18572 - 'Bug 18572 - OpacRenewalBranch is now respected" );
#Test GetBiblioIssues
is( GetBiblioIssues(), undef, "GetBiblio Issues without parameters" );