@@ -, +, @@ --- Koha/Item.pm | 11 +++++------ Koha/Schema/Result/Item.pm | 10 ++++++++++ 2 files changed, 15 insertions(+), 6 deletions(-) --- a/Koha/Item.pm +++ a/Koha/Item.pm @@ -565,7 +565,9 @@ we still expect the item to end up at a final location eventually. sub get_transfer { my ($self) = @_; - return $self->get_transfers->search( {}, { rows => 1 } )->next; + my $transfer = $self->_result->branchtransfer; + + return Koha::Item::Transfers->_new_from_dbic($transfer)->next; } =head3 get_transfers @@ -588,12 +590,9 @@ we still expect the item to end up at a final location eventually. sub get_transfers { my ($self) = @_; - my $transfer_rs = $self->_result->branchtransfers; + my $transfer_rs = $self->_result->branchtransfer; - return Koha::Item::Transfers - ->_new_from_dbic($transfer_rs) - ->filter_by_current - ->search( {}, { order_by => [ { -desc => 'datesent' }, { -asc => 'daterequested' } ], } ); + return Koha::Item::Transfers->_new_from_dbic($transfer_rs); } =head3 last_returned_by --- a/Koha/Schema/Result/Item.pm +++ a/Koha/Schema/Result/Item.pm @@ -972,6 +972,16 @@ __PACKAGE__->many_to_many( "ordernumber", ); +__PACKAGE__->has_many( + "branchtransfer", + "Koha::Schema::Result::Branchtransfer", + { 'foreign.itemnumber' => 'self.itemnumber' }, + { + where => { datearrived => undef, datecancelled => undef }, + order_by => [ { -desc => 'datesent' }, { -asc => 'daterequested' } ] + } +); + use C4::Context; sub effective_itemtype { my ( $self ) = @_; --