Bug 21020: Fix return branch on transfer - SIP
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Fri, 29 Jun 2018 13:06:31 +0000 (10:06 -0300)
committerNick Clemens <nick@bywatersolutions.com>
Fri, 6 Jul 2018 10:13:32 +0000 (10:13 +0000)
Caused by
  commit 546379cc92b733cb29a0b70247a72c770afdad26
  Bug 17680: C4::Circulation - Remove GetItemIssue, simple calls

Since this commit AddReturn return a Koha::Issue object, not a hashref
with item's info.

Test plan:
1 - Enable SIP server on your test instance
   For kohadevbox:
   cp /etc/koha/SIPConfig.xml /etc/koha/sites/kohadev/
   create patron with user/pass term1/term1 and grant circulation
   privileges
2 - enable AutomaticItemReturn
3 - Checkin an item which will generate a transfer via SIP2:
   perl /home/vagrant/kohaclone/misc/sip_cli_emulator.pl -a localhost -p
   6001 -su term1 -sp term1 -l LPL --item {BARCODE} -m checkin -t
   CR
4 - Note no CT field
5 - Apply patch
6 - Repeate checkin via SIP2
7 - Transfer destination is correctly returned in CT

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

C4/SIP/ILS/Transaction/Checkin.pm

index 2ad3df5..a35009f 100644 (file)
@@ -65,7 +65,7 @@ sub do_checkin {
                    . substr( $return_date, 16, 2 );
 
     $debug and warn "do_checkin() calling AddReturn($barcode, $branch)";
-    my ($return, $messages, $iteminformation, $borrower) = AddReturn($barcode, $branch, undef, undef, $return_date);
+    my ($return, $messages, $issue, $borrower) = AddReturn($barcode, $branch, undef, undef, $return_date);
     $self->alert(!$return);
     # ignoring messages: NotIssued, WasLost, WasTransfered
 
@@ -94,7 +94,7 @@ sub do_checkin {
         $self->alert_type('04');            # send to other branch
     }
     if ($messages->{WasTransfered}) { # set into transit so tell unit
-        $self->{item}->destination_loc($iteminformation->{homebranch});
+        $self->{item}->destination_loc($issue->item->homebranch);
         $self->alert_type('04');            # send to other branch
     }
     if ($messages->{ResFound}) {