From 698bfe0218f177498589cb5b283fa6cb4fb68a40 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Mon, 4 Oct 2021 18:43:52 +0000 Subject: [PATCH] Bug 29062: (follow-up) Adjust SendCirculationAlert --- C4/Circulation.pm | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/C4/Circulation.pm b/C4/Circulation.pm index 5da1d80258..262e4f4c0a 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -2257,6 +2257,7 @@ sub AddReturn { item => $item->unblessed, borrower => $patron->unblessed, branch => $branch, + issue => $issue }); } @@ -3520,8 +3521,8 @@ B: sub SendCirculationAlert { my ($opts) = @_; - my ($type, $item, $borrower, $branch) = - ($opts->{type}, $opts->{item}, $opts->{borrower}, $opts->{branch}); + my ($type, $item, $borrower, $branch, $issue) = + ($opts->{type}, $opts->{item}, $opts->{borrower}, $opts->{branch}, $opts->{issue}); my %message_name = ( CHECKIN => 'Item_Check_in', CHECKOUT => 'Item_Checkout', @@ -3531,7 +3532,21 @@ sub SendCirculationAlert { borrowernumber => $borrower->{borrowernumber}, message_name => $message_name{$type}, }); - my $issues_table = ( $type eq 'CHECKOUT' || $type eq 'RENEWAL' ) ? 'issues' : 'old_issues'; + + + my $tables = { + items => $item->{itemnumber}, + biblio => $item->{biblionumber}, + biblioitems => $item->{biblionumber}, + borrowers => $borrower, + branches => $branch, + }; + + if( $type eq 'CHECKIN' ){ + $tables->{old_issues} = $issue->issue_id; + } else { + $tables->{issues} = $item->{itemnumber}; + } my $schema = Koha::Database->new->schema; my @transports = keys %{ $borrower_preferences->{transports} }; @@ -3549,14 +3564,7 @@ sub SendCirculationAlert { branchcode => $branch, message_transport_type => $mtt, lang => $borrower->{lang}, - tables => { - $issues_table => $item->{itemnumber}, - 'items' => $item->{itemnumber}, - 'biblio' => $item->{biblionumber}, - 'biblioitems' => $item->{biblionumber}, - 'borrowers' => $borrower, - 'branches' => $branch, - } + tables => $tables, ) or next; C4::Context->dbh->do(q|LOCK TABLE message_queue READ|) unless $do_not_lock; -- 2.20.1