Bug 13853: Show waiting hold expiration date for waiting holds in holds ajax datatable
We should show the expiration date for waiting holds in the holds datatable that appears in circulation.pl and moremember.pl Test Plan: 1) Ensure ReservesMaxPickUpDelay is set 2) Place a hold on a record 3) Place a second hold and set it to waiting by checking it in 4) Place a third hold with an expiration date 5) View the holds tab on circulation.pl and moremember.pl 6) Note the first hold has no expiration date 7) Note the second hold has an expiration date of today + ReservesMaxPickUpDelay days 8) Note the thrid hold has an expiration date of whatever you set it to Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Cathi Wiggins <CWIGGINS@ci.arcadia.ca.us> Signed-off-by: Megan Wianecki <mwianecki@mplmain.mtpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@koha-community.org> Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
This commit is contained in:
parent
82ce53c8b7
commit
47be5cafef
12
Koha/Hold.pm
12
Koha/Hold.pm
|
|
@ -62,6 +62,18 @@ sub waiting_expires_on {
|
|||
return $dt;
|
||||
}
|
||||
|
||||
=head3 is_waiting
|
||||
|
||||
Returns true if hold is a waiting hold
|
||||
|
||||
=cut
|
||||
|
||||
sub is_waiting {
|
||||
my ($self) = @_;
|
||||
|
||||
return $self->found() eq 'W';
|
||||
}
|
||||
|
||||
=head3 biblio
|
||||
|
||||
Returns the related Koha::Biblio object for this hold
|
||||
|
|
|
|||
27
Koha/Item.pm
27
Koha/Item.pm
|
|
@ -23,6 +23,8 @@ use Carp;
|
|||
|
||||
use Koha::Database;
|
||||
|
||||
use Koha::Branches;
|
||||
|
||||
use base qw(Koha::Object);
|
||||
|
||||
=head1 NAME
|
||||
|
|
@ -47,6 +49,31 @@ sub effective_itemtype {
|
|||
return $self->_result()->effective_itemtype();
|
||||
}
|
||||
|
||||
=head3 home_branch
|
||||
|
||||
=cut
|
||||
|
||||
sub home_branch {
|
||||
my ($self) = @_;
|
||||
|
||||
$self->{_home_branch} ||= Koha::Branches->find( $self->homebranch() );
|
||||
|
||||
return $self->{_home_branch};
|
||||
}
|
||||
|
||||
=head3 holding_branch
|
||||
|
||||
=cut
|
||||
|
||||
sub holding_branch {
|
||||
my ($self) = @_;
|
||||
|
||||
$self->{_holding_branch} ||= Koha::Branches->find( $self->holdingbranch() );
|
||||
|
||||
return $self->{_holding_branch};
|
||||
}
|
||||
|
||||
|
||||
=head3 type
|
||||
|
||||
=cut
|
||||
|
|
|
|||
23
svc/holds
23
svc/holds
|
|
@ -29,8 +29,8 @@ use C4::Charset;
|
|||
use C4::Circulation qw(GetTransfers);
|
||||
use C4::Context;
|
||||
|
||||
use Koha::Database;
|
||||
use Koha::DateUtils;
|
||||
use Koha::Holds;
|
||||
|
||||
my $input = new CGI;
|
||||
|
||||
|
|
@ -59,7 +59,7 @@ my $sorting_column = $sort_columns[ $input->param('iSortCol_0') ]
|
|||
binmode STDOUT, ":encoding(UTF-8)";
|
||||
print $input->header( -type => 'text/plain', -charset => 'UTF-8' );
|
||||
|
||||
my $holds_rs = $schema->resultset('Reserve')->search(
|
||||
my $holds_rs = Koha::Holds->search(
|
||||
{ borrowernumber => $borrowernumber },
|
||||
{
|
||||
order_by => { "-$sorting_direction" => $sorting_column }
|
||||
|
|
@ -79,15 +79,15 @@ while ( my $h = $holds_rs->next() ) {
|
|||
title => $h->biblio()->title(),
|
||||
author => $h->biblio()->author(),
|
||||
reserve_id => $h->reserve_id(),
|
||||
branchcode => $h->branchcode()->branchname(),
|
||||
branchcode => $h->branch()->branchname(),
|
||||
reservedate => $h->reservedate(),
|
||||
expirationdate => $h->expirationdate(),
|
||||
suspend => $h->suspend(),
|
||||
suspend_until => $h->suspend_until(),
|
||||
found => $h->found(),
|
||||
waiting => $h->found() eq 'W',
|
||||
waiting_at => $h->branchcode()->branchname(),
|
||||
waiting_here => $h->branchcode()->branchcode() eq $branch,
|
||||
waiting => $h->is_waiting(),
|
||||
waiting_at => $h->branch()->branchname(),
|
||||
waiting_here => $h->branch()->branchcode() eq $branch,
|
||||
priority => $h->priority(),
|
||||
subtitle => GetRecordValue(
|
||||
'subtitle', GetMarcBiblio($biblionumber),
|
||||
|
|
@ -107,6 +107,11 @@ while ( my $h = $holds_rs->next() ) {
|
|||
: q{},
|
||||
};
|
||||
|
||||
if ( my $e = $h->waiting_expires_on() ) {
|
||||
$hold->{expirationdate} = $e->ymd();
|
||||
$hold->{expirationdate_formatted} = output_pref( { dt => $e, dateonly => 1 });
|
||||
}
|
||||
|
||||
$hold->{transfered} = 0;
|
||||
$hold->{not_transfered} = 0;
|
||||
|
||||
|
|
@ -124,11 +129,11 @@ while ( my $h = $holds_rs->next() ) {
|
|||
$hold->{date_sent} = output_pref( dt_from_string($transferred_when) );
|
||||
$hold->{from_branch} = GetBranchName($transferred_from);
|
||||
}
|
||||
elsif ( $item->holdingbranch()->branchcode() ne
|
||||
$h->branchcode()->branchcode() )
|
||||
elsif ( $item->holding_branch()->branchcode() ne
|
||||
$h->branch()->branchcode() )
|
||||
{
|
||||
$hold->{not_transferred} = 1;
|
||||
$hold->{not_transferred_by} = $h->item()->holdingbranch()->branchname();
|
||||
$hold->{not_transferred_by} = $h->item()->holding_branch()->branchname();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue