From fd7a4e40c500f955a5c46bedd4398040e42ccf84 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Mon, 8 Jan 2024 12:55:01 +0000 Subject: [PATCH] Bug 35721: ModItemTransfer -> Koha::Item->request_transfer - returns.pl This patch replaces the call to ModItemTransfer in circ/returns.pl with a call to Koha::Item->request_transfer and Koha::Item::Transfer->transit. Test plan 1) Set 'AutomaticItemReturn' to "Don't" 2) Check an item in at a location other than it's 'home' or 'holding' branch 3) Note you should be asked a about returning the item to another branch 4) Opting to not proceed should NOT result in a row in the branchtransfers table 5) Option to proceed (either with a print slip or just 'OK') should result in a branchtransfer from the current checkin branch to the home or holding branch depending on the circulation rules. 5a) The item should be marked as immediately in transit in, i.e. the 'datesent' set to today. Signed-off-by: David Nind Signed-off-by: Martin Renvoize --- circ/returns.pl | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/circ/returns.pl b/circ/returns.pl index a2a6eff9ee2..54fc71ccc10 100755 --- a/circ/returns.pl +++ b/circ/returns.pl @@ -37,7 +37,6 @@ use DateTime; use C4::Auth qw( get_template_and_user get_session haspermission ); use C4::Circulation qw( barcodedecode GetBranchItemRule AddReturn updateWrongTransfer LostItem ); use C4::Context; -use C4::Items qw( ModItemTransfer ); use C4::Members::Messaging; use C4::Members; use C4::Output qw( output_html_with_http_headers ); @@ -250,12 +249,15 @@ if ($return_date_override) { } } +# If 'needstransfer' was set and the librarian has chosen to initiate the transfer if ( $op eq 'cud-dotransfer'){ -# An item has been returned to a branch other than the homebranch, and the librarian has chosen to initiate a transfer my $transferitem = $query->param('transferitem'); - my $tobranch = $query->param('tobranch'); + my $item = Koha::Items->find( $transferitem ); + my $tobranchcode = $query->param('tobranch'); + my $tobranch = Koha::Libraries->find($tobranchcode); my $trigger = $query->param('trigger'); - ModItemTransfer($transferitem, $userenv_branch, $tobranch, $trigger); + my $transfer = $item->request_transfer({ to => $tobranch, reason => $trigger }); + $transfer->transit; } if ($transit && $op eq 'cud-transfer') { -- 2.45.2