From 1af160ef3d20098e70ef364de070751fdf695e24 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Thu, 18 Nov 2021 15:47:02 +0000 Subject: [PATCH] Bug 29495: (follow-up) Use 'item' relationship This patch adds the missing 'item' relationship in Checkouts::ReturnClaim and then uses it from the resolve method. This improve the reliability of the resolution code so it works when the item has already been checked in (without having to check Old::Checkouts). --- Koha/Checkouts/ReturnClaim.pm | 16 +++++++++++++++- Koha/Schema/Result/ReturnClaim.pm | 15 +++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/Koha/Checkouts/ReturnClaim.pm b/Koha/Checkouts/ReturnClaim.pm index c57a8c05c0..fc49eeb3ad 100644 --- a/Koha/Checkouts/ReturnClaim.pm +++ b/Koha/Checkouts/ReturnClaim.pm @@ -102,6 +102,20 @@ sub patron { return Koha::Patron->_new_from_dbic( $borrower ) if $borrower; } +=head3 item + + my $item = $claim->item; + +Return the return claim item + +=cut + +sub item { + my ( $self ) = @_; + my $item_rs = $self->_result->item; + return Koha::Item->_new_from_dbic( $item_rs ); +} + =head3 resolve $claim->resolve( @@ -138,7 +152,7 @@ sub resolve { )->store; if ( defined $params->{new_lost_status} ) { - $self->checkout->item->itemlost( $params->{new_lost_status} )->store; + $self->item->itemlost( $params->{new_lost_status} )->store; } } ); diff --git a/Koha/Schema/Result/ReturnClaim.pm b/Koha/Schema/Result/ReturnClaim.pm index 4e2c56c40b..9e67c7f0e7 100644 --- a/Koha/Schema/Result/ReturnClaim.pm +++ b/Koha/Schema/Result/ReturnClaim.pm @@ -316,6 +316,21 @@ __PACKAGE__->belongs_to( }, ); +=head2 item + +Type: belongs_to + +Related object: L + +=cut + +__PACKAGE__->belongs_to( + "item", + "Koha::Schema::Result::Item", + { itemnumber => "itemnumber" }, + { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, +); + sub koha_objects_class { 'Koha::Checkouts::ReturnClaims'; } -- 2.20.1