diff --git a/C4/Circulation.pm b/C4/Circulation.pm index f9f7c290ff..ca9c669faf 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -4246,7 +4246,7 @@ sub ProcessOfflineOperation { if ( $operation->{action} eq 'return' ) { $report = ProcessOfflineReturn( $operation ); } elsif ( $operation->{action} eq 'issue' ) { - $report = ProcessOfflineIssue( $operation ); + ($report) = ProcessOfflineIssue($operation); } elsif ( $operation->{action} eq 'payment' ) { $report = ProcessOfflinePayment( $operation ); } @@ -4304,15 +4304,15 @@ sub ProcessOfflineIssue { $operation->{timestamp}, ); } - AddIssue( + my $checkout = AddIssue( $patron, - $operation->{'barcode'}, - undef, + $operation->{barcode}, + $operation->{due_date}, undef, $operation->{timestamp}, undef, ); - return "Success."; + return ( "Success.", $checkout ); } else { return "Borrower not found."; } diff --git a/C4/SIP/ILS/Transaction/Checkout.pm b/C4/SIP/ILS/Transaction/Checkout.pm index b27fcbe4ff..df375cef1b 100644 --- a/C4/SIP/ILS/Transaction/Checkout.pm +++ b/C4/SIP/ILS/Transaction/Checkout.pm @@ -152,11 +152,14 @@ sub do_checkout { if ( $no_block_due_date ) { $overridden_duedate = $no_block_due_date; - ProcessOfflineIssue({ + my ( $msg, $checkout ) = ProcessOfflineIssue({ cardnumber => $patron->cardnumber, barcode => $barcode, timestamp => $no_block_due_date, + due_date => $no_block_due_date, + timestamp => dt_from_string, }); + $self->{due} = $self->duedatefromissue( $checkout, $itemnumber ); } else { # can issue my $recall_id;