This patch adds a clause in ModReserveAffect to check if there
are existing transfers and close them when setting a hold to waiting
To test:
1 - Set AutomaticItemReturn to Do
2 - Checkin an item from Library B at Library A
3 - Confirm item is in transfer (check the details page)
4 - Place a item level hold for pickup at library A
5 - Checkin the item at Library A
6 - Confirm the hold
7 - View the details page
8 - Note the item is in transit and waiting
9 - Apply patch
10 - Delete hold and repeat
11 - Confirm that transfer is closed when hold marked waiting
Signed-off-by: Sally <sally.healey@cheshirewestandchester.gov.uk>
Signed-off-by: Stina Hallin <stina.hallin@ub.lu.se>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
_koha_notify_reserve( $hold->reserve_id )
if ( !$transferToDo && !$already_on_shelf );
+ if( !$transferToDo ){
+ _koha_notify_reserve( $hold->reserve_id ) unless $already_on_shelf;
+ my $transfers = Koha::Item::Transfers->search({
+ itemnumber => $itemnumber,
+ datearrived => undef
+ });
+ while( my $transfer = $transfers->next ){
+ $transfer->datearrived( DateTime->now( time_zone => C4::Context->tz() ) )->store;
+ };
+ }
+
+
_FixPriority( { biblionumber => $biblionumber } );
my $item = Koha::Items->find($itemnumber);
if ( $item->location && $item->location eq 'CART'