Bugzilla – Attachment 113853 Details for
Bug 24488
Holds to Pull sometimes shows the wrong 'first patron' details
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 24488: Simplify searches
Bug-24488-Simplify-searches.patch (text/plain), 7.54 KB, created by
Josef Moravec
on 2020-11-20 06:24:13 UTC
(
hide
)
Description:
Bug 24488: Simplify searches
Filename:
MIME Type:
Creator:
Josef Moravec
Created:
2020-11-20 06:24:13 UTC
Size:
7.54 KB
patch
obsolete
>From 56ebba8061fe2cf404e5c965a06d22c8258171cb Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Wed, 7 Oct 2020 18:06:05 +0200 >Subject: [PATCH] Bug 24488: Simplify searches > >It also: >Use dtf for date handling >add missing td > >Signed-off-by: Michal Denar <black23@gmail.com> > >Signed-off-by: Josef Moravec <josef.moravec@gmail.com> > >Signed-off-by: Michal Denar <black23@gmail.com> >--- > circ/pendingreserves.pl | 130 +++++++++------------ > .../prog/en/modules/circ/pendingreserves.tt | 1 + > 2 files changed, 57 insertions(+), 74 deletions(-) > >diff --git a/circ/pendingreserves.pl b/circ/pendingreserves.pl >index 85fcdf0270..554c8cb9eb 100755 >--- a/circ/pendingreserves.pl >+++ b/circ/pendingreserves.pl >@@ -164,8 +164,9 @@ my %where = ( > ); > > # date boundaries >-my $startdate_iso = output_pref({ dt => $startdate, dateformat => 'iso', dateonly => 1 }); >-my $enddate_iso = output_pref({ dt => $enddate, dateformat => 'iso', dateonly => 1 }); >+my $dtf = Koha::Database->new->schema->storage->datetime_parser; >+my $startdate_iso = $dtf->format_date($startdate); >+my $enddate_iso = $dtf->format_date($enddate); > if ( $startdate_iso && $enddate_iso ){ > $where{'reserve.reservedate'} = [ -and => { '>=', $startdate_iso }, { '<=', $enddate_iso } ]; > } elsif ( $startdate_iso ){ >@@ -204,19 +205,26 @@ foreach my $bibnum ( @biblionumbers ){ > my @branchtransfers = map { $_->itemnumber } Koha::Item::Transfers->search({ datearrived => undef }, { columns => [ 'itemnumber' ], collapse => 1 }); > my @issues = map { $_->itemnumber } Koha::Checkouts->search({}, { columns => [ 'itemnumber' ], collapse => 1 }); > >+ my $items = Koha::Items->search( >+ { >+ biblionumber => $bibnum, >+ itemlost => 0, >+ withdrawn => 0, >+ notforloan => 0, >+ itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ } >+ ); >+ > # get available item types for each biblio > my $res_itemtypes; > if ( C4::Context->preference('item-level_itypes') ){ >- $res_itemtypes = Koha::Items->search( >- { biblionumber => $bibnum, >- itype => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ $res_itemtypes = $items->search( >+ { >+ itype => { '!=', undef }, > }, >- { columns => 'itype', >- distinct => 1, >+ { >+ columns => 'itype', >+ distinct => 1, > } > ); > } else { >@@ -230,105 +238,79 @@ foreach my $bibnum ( @biblionumbers ){ > $reserves->{$bibnum}->{itemtypes} = $res_itemtypes; > > # get available locations for each biblio >- my $res_locations = Koha::Items->search( >- { biblionumber => $bibnum, >- location => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ my $res_locations = $items->search( >+ { >+ location => { '!=', undef }, > }, >- { columns => 'location', >- distinct => 1, >+ { >+ columns => 'location', >+ distinct => 1, > } > ); > $reserves->{$bibnum}->{locations} = $res_locations; > > # get available callnumbers for each biblio >- my $res_callnumbers = Koha::Items->search( >- { biblionumber => $bibnum, >- itemcallnumber => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ my $res_callnumbers = $items->search( >+ { >+ itemcallnumber => { '!=', undef }, > }, >- { columns => 'itemcallnumber', >- distinct => 1, >+ { >+ columns => 'itemcallnumber', >+ distinct => 1, > } > ); > $reserves->{$bibnum}->{callnumbers} = $res_callnumbers; > > # get available enumchrons for each biblio >- my $res_enumchrons = Koha::Items->search( >- { biblionumber => $bibnum, >- enumchron => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ my $res_enumchrons = $items->search( >+ { >+ enumchron => { '!=', undef }, > }, >- { columns => 'enumchron', >- distinct => 1, >+ { >+ columns => 'enumchron', >+ distinct => 1, > } > ); > $reserves->{$bibnum}->{enumchrons} = $res_enumchrons; > > # get available copynumbers for each biblio >- my $res_copynumbers = Koha::Items->search( >- { biblionumber => $bibnum, >- copynumber => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ my $res_copynumbers = $items->search( >+ { >+ copynumber => { '!=', undef }, > }, >- { columns => 'copynumber', >- distinct => 1, >+ { >+ columns => 'copynumber', >+ distinct => 1, > } > ); > $reserves->{$bibnum}->{copynumbers} = $res_copynumbers; > > # get available barcodes for each biblio >- my $res_barcodes = Koha::Items->search( >- { biblionumber => $bibnum, >- barcode => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ my $res_barcodes = $items->search( >+ { >+ barcode => { '!=', undef }, > }, >- { columns => 'barcode', >- distinct => 1, >+ { >+ columns => 'barcode', >+ distinct => 1, > } > ); > $reserves->{$bibnum}->{barcodes} = $res_barcodes; > > # get available holding branches for each biblio >- my $res_holdingbranches = Koha::Items->search( >- { biblionumber => $bibnum, >- holdingbranch => { '!=', undef }, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >+ my $res_holdingbranches = $items->search( >+ { >+ holdingbranch => { '!=', undef }, > }, >- { columns => 'holdingbranch', >- distinct => 1, >+ { >+ columns => 'holdingbranch', >+ distinct => 1, > } > ); > $reserves->{$bibnum}->{holdingbranches} = $res_holdingbranches; > > # items available >- my $items_count = Koha::Items->search( >- { biblionumber => $bibnum, >- itemlost => 0, >- withdrawn => 0, >- notforloan => 0, >- itemnumber => { -not_in => [ @branchtransfers, @issues ] }, >- }, >- { select => [ { distinct => 'itemnumber' } ] } >- )->count; >+ my $items_count = $items->count; > $reserves->{$bibnum}->{items_count} = $items_count; > > # patrons with holds >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/pendingreserves.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/pendingreserves.tt >index a53d7df181..d68d8ed3e3 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/pendingreserves.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/pendingreserves.tt >@@ -219,6 +219,7 @@ > <td id="locationfilter"></td> > <td></td> > <td></td> >+ <td></td> > </tr> > </tfoot> > </table> >-- >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 24488
:
97773
|
106379
|
106882
|
107206
|
107213
|
111341
|
111342
|
111343
|
111347
|
111348
|
111349
|
111350
|
111358
|
111359
|
111360
|
111361
|
111362
|
112815
|
112816
|
112817
|
112818
|
112819
|
113695
|
113696
|
113697
|
113698
|
113699
|
113700
|
113756
|
113757
|
113763
|
113764
|
113774
|
113775
|
113776
|
113777
|
113778
|
113798
|
113829
|
113830
|
113831
|
113832
|
113833
|
113834
|
113835
|
113836
|
113837
|
113838
|
113839
|
113840
|
113841
|
113842
|
113850
|
113851
|
113852
|
113853
|
113854
|
113855
|
113856
|
113857
|
113858
|
113859
|
113860
|
113861
|
113862
|
113863
|
113864
|
114835
|
114836
|
114837
|
114838
|
114839
|
114840
|
114841
|
114842
|
114843
|
114844
|
114845
|
114846
|
114847
|
114848
|
114849
|
114850
|
116362
|
116363
|
116364
|
116365
|
116366
|
116367
|
116368
|
116369
|
116370
|
116371
|
116372
|
116373
|
116374
|
116375
|
116376
|
116377
|
116384