Bugzilla – Attachment 92428 Details for
Bug 8367
How long is a hold waiting for pickup at a more granular level
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 8367: Fixes to make the workflow of master fit, including display of lastpickupdate
Bug-8367-Fixes-to-make-the-workflow-of-master-fit-.patch (text/plain), 7.43 KB, created by
Hayley Pelham
on 2019-08-22 00:47:38 UTC
(
hide
)
Description:
Bug 8367: Fixes to make the workflow of master fit, including display of lastpickupdate
Filename:
MIME Type:
Creator:
Hayley Pelham
Created:
2019-08-22 00:47:38 UTC
Size:
7.43 KB
patch
obsolete
>From 71686eb7474d5f104eb5d735bc75ee5561dcfa7e Mon Sep 17 00:00:00 2001 >From: Hayley Mapley <hayleymapley@catalyst.net.nz> >Date: Tue, 20 Aug 2019 05:02:14 +0000 >Subject: [PATCH] Bug 8367: Fixes to make the workflow of master fit, including > display of lastpickupdate > >Changed circ/waitingreserves.pl to correctly display lastpickupdate in >Circulation>Holds awaiting pickup. >Changed includes/holds-table.inc to display lastpickupdate in >opac-user.pl in Holds tab. > >Sponsored-by: Brimbank District Council >Authored-by: Hayley Mapley and Alex Buckley (Catalyst IT) >--- > C4/Circulation.pm | 1 + > C4/Reserves.pm | 9 ++-- > circ/waitingreserves.pl | 50 +++------------------- > .../bootstrap/en/includes/holds-table.inc | 2 +- > 4 files changed, 12 insertions(+), 50 deletions(-) > >diff --git a/C4/Circulation.pm b/C4/Circulation.pm >index 44f94e7fec7..23fb6ec5b7d 100644 >--- a/C4/Circulation.pm >+++ b/C4/Circulation.pm >@@ -2058,6 +2058,7 @@ sub AddReturn { > # if we don't have a reserve with the status W, we launch the Checkreserves routine > my ($resfound, $resrec); > my $lookahead= C4::Context->preference('ConfirmFutureHolds'); #number of days to look for future holds >+ > ($resfound, $resrec, undef) = C4::Reserves::CheckReserves( $item->itemnumber, undef, $lookahead ) unless ( $item->withdrawn ); > if ($resfound) { > $resrec->{'ResFound'} = $resfound; >diff --git a/C4/Reserves.pm b/C4/Reserves.pm >index bfecb16d4c8..f6b3eb01eae 100644 >--- a/C4/Reserves.pm >+++ b/C4/Reserves.pm >@@ -186,7 +186,7 @@ sub AddReserve { > } > my ($waitingdate, $lastpickupdate); > >- my $item = C4::Items::GetItem( $checkitem ); >+ my $item = Koha::Items->find( $checkitem ); #FIXME Prevent bad calls > # If the reserv had the waiting status, we had the value of the resdate > if ( $found eq 'W' ) { > $waitingdate = $resdate; >@@ -897,8 +897,9 @@ sub CheckReserves { > my $branchitemrule = C4::Circulation::GetBranchItemRule($branch,$item->effective_itemtype); > next if ($branchitemrule->{'holdallowed'} == 0); > next if (($branchitemrule->{'holdallowed'} == 1) && ($branch ne $patron->branchcode)); >- my $hold_fulfillment_policy = $branchitemrule->{hold_fulfillment_policy}; >- next if ( ($branchitemrule->{hold_fulfillment_policy} ne 'any') && ($res->{branchcode} ne $item->$hold_fulfillment_policy) ); >+ my $hold_fulfillment_policy = $branchitemrule->{'hold_fulfillment_policy'}; >+ >+ next if ( ($branchitemrule->{'hold_fulfillment_policy'} ne 'any') && ($res->{branchcode} ne $item->$hold_fulfillment_policy) ); > next unless $item->can_be_transferred( { to => scalar Koha::Libraries->find( $res->{branchcode} ) } ); > $priority = $res->{'priority'}; > $highest = $res; >@@ -1198,7 +1199,7 @@ sub ModReserveAffect { > $hold->itemnumber($itemnumber); > $hold->set_waiting($transferToDo); > >- my $item = C4::Items::GetItem( $itemnumber ); >+ my $item = Koha::Items->find( $itemnumber ); > my $borrower = Koha::Patrons->find( $borrowernumber ); > $borrower = $borrower->unblessed; > my $lastpickupdate = GetLastPickupDate( $hold, $item, $borrower ); >diff --git a/circ/waitingreserves.pl b/circ/waitingreserves.pl >index 3e54bbef97d..3c5ac951552 100755 >--- a/circ/waitingreserves.pl >+++ b/circ/waitingreserves.pl >@@ -89,61 +89,21 @@ my $holds = Koha::Holds->waiting->search({ priority => 0, ( $all_branches ? () : > # get reserves for the branch we are logged into, or for all branches > > my $today = dt_from_string; >-my $max_pickup_delay = C4::Context->preference('ReservesMaxPickUpDelay'); > > while ( my $hold = $holds->next ) { > next unless ($hold->waitingdate && $hold->waitingdate ne '0000-00-00'); >- my $item = $hold->item; >- my $patron = $hold->borrower; >- my $biblio = $item->biblio; >- my $holdingbranch = $item->holdingbranch; >- my $homebranch = $item->homebranch; >- my %getreserv = ( >- title => $biblio->title, >- itemnumber => $item->itemnumber, >- waitingdate => $hold->waitingdate, >- reservedate => $hold->reservedate, >- borrowernumber => $patron->borrowernumber, >- biblionumber => $biblio->biblionumber, >- barcode => $item->barcode, >- homebranch => $homebranch, >- holdingbranch => $item->holdingbranch, >- itemcallnumber => $item->itemcallnumber, >- enumchron => $item->enumchron, >- copynumber => $item->copynumber, >- borrowername => $patron->surname, # FIXME Let's send $patron to the template >- borrowerfirstname => $patron->firstname, >- borrowerphone => $patron->phone, >- lastpickupdate => $hold->lastpickupdate, >- ); >- >- my $itemtype = Koha::ItemTypes->find( $item->effective_itemtype ); >- $getreserv{'itemtype'} = $itemtype->description; # FIXME Should not it be translated_description? >- $getreserv{'subtitle'} = GetRecordValue( >- 'subtitle', >- GetMarcBiblio({ biblionumber => $biblio->biblionumber }), >- $biblio->frameworkcode); >- if ( $homebranch ne $holdingbranch ) { >- $getreserv{'dotransfer'} = 1; >- } >- >- $getreserv{patron} = $patron; >- warn $getreserv{'waitingdate'}; >- warn $getreserv{'lastpickupdate'}; >- if ( $getreserv{'waitingdate'} ) { >- my $lastpickupdate = dt_from_string($getreserv{'lastpickupdate'}); >+ if ( $hold->waitingdate ) { >+ my $lastpickupdate = dt_from_string($hold->lastpickupdate); > if ( DateTime->compare( $today, $lastpickupdate ) == 1 ) { > if ($cancelall) { >- my $res = cancel( $item->itemnumber, $patron->borrowernumber, $item->holdingbranch, $homebranch, !$transfer_when_cancel_all ); >+ my $res = cancel( $hold->item->itemnumber, $hold->borrowernumber, $hold->item->holdingbranch, $hold->item->homebranch, !$transfer_when_cancel_all ); > push @cancel_result, $res if $res; > next; > } else { >- push @overloop, \%getreserv; >- $overcount++; >+ push @over_loop, $hold; > } > }else{ >- push @reservloop, \%getreserv; >- $reservcount++; >+ push @reserve_loop, $hold; > } > } > } >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc >index 4f2ba9ede5b..6b03076ccf7 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc >@@ -107,7 +107,7 @@ > [% IF ( HOLD.found ) %] > Item waiting at <b> [% HOLD.branch.branchname | html %]</b> > [% IF ( HOLD.waitingdate ) %] >- since [% HOLD.waitingdate | $KohaDates %] until [% RESERVE.lastpickupdate | $KohaDates %] >+ since [% HOLD.waitingdate | $KohaDates %] until [% HOLD.lastpickupdate | $KohaDates %] > [% END %] > <input type="hidden" name="pickup" value="[% HOLD.branchcode | html %]" /> > [% ELSE %] >-- >2.11.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 8367
:
12130
|
13139
|
13602
|
13603
|
13604
|
13624
|
15334
|
15335
|
15369
|
15498
|
15613
|
15658
|
15659
|
19093
|
19094
|
19095
|
19096
|
19104
|
19105
|
19107
|
19108
|
19116
|
19180
|
19181
|
19182
|
19360
|
19361
|
19362
|
20300
|
20301
|
20302
|
20303
|
20304
|
32786
|
32826
|
32884
|
32885
|
32916
|
32930
|
42706
|
42754
|
79790
|
79791
|
79798
|
79799
|
79800
|
79853
|
79854
|
79855
|
79859
|
92412
|
92413
|
92414
|
92415
|
92416
|
92417
|
92418
|
92419
|
92420
|
92421
|
92422
|
92423
|
92424
|
92425
|
92426
|
92427
|
92428
|
92958
|
92959
|
92960
|
92961
|
103425
|
113211
|
117284
|
118017
|
118021
|
124568
|
125087
|
131299
|
131300
|
131301
|
131302
|
131646
|
131647
|
131718
|
131719
|
131720
|
131722
|
131723
|
131724
|
133089
|
133090
|
133091
|
133092
|
133093
|
133094
|
142897
|
142898
|
142899
|
142900
|
142901
|
142902
|
142903
|
144097
|
144098
|
144099
|
144100
|
144101
|
144102
|
144103
|
144146
|
145644
|
145657
|
147798
|
147799
|
147800
|
147801
|
147802
|
147803
|
147804
|
147805
|
147806
|
147807
|
148536
|
148537
|
148538
|
148539
|
148540
|
148541
|
148542
|
148543
|
148544
|
148545
|
150437
|
150438
|
150439
|
153235
|
153237
|
153238
|
153239
|
153240
|
153241
|
153242
|
153243
|
153244
|
153245
|
153246
|
157138
|
157139
|
157140
|
157141
|
157142
|
157143
|
157144
|
157145
|
157146
|
157147
|
157148
|
157149
|
157150
|
157298
|
157343
|
157344
|
157345
|
157346
|
157347
|
157348
|
157349
|
157350
|
157351
|
157352
|
157354
|
157355
|
157356
|
157697
|
157698
|
157699
|
157700
|
157701
|
157702
|
157703
|
157704
|
157705
|
157706
|
157707
|
157708
|
157709
|
157715
|
158023
|
158024
|
158025
|
158026
|
158027
|
158028
|
158029
|
158030
|
158031
|
158032
|
158033
|
158034
|
158035
|
158254
|
158255