Bugzilla – Attachment 138305 Details for
Bug 27272
Move C4::Items::GetItemsInfo to Koha namespace
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 27272: Add search_ordered sub to order items with extra conditions
Bug-27272-Add-searchordered-sub-to-order-items-wit.patch (text/plain), 3.00 KB, created by
Jonathan Druart
on 2022-07-29 11:53:33 UTC
(
hide
)
Description:
Bug 27272: Add search_ordered sub to order items with extra conditions
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2022-07-29 11:53:33 UTC
Size:
3.00 KB
patch
obsolete
>From ab266b3061443793fedbcc5ea5be2889ba0d6618 Mon Sep 17 00:00:00 2001 >From: Petro Vashchuk <stalkernoid@gmail.com> >Date: Mon, 18 Jul 2022 12:47:21 +0300 >Subject: [PATCH] Bug 27272: Add search_ordered sub to order items with extra > conditions > >--- > Koha/Items.pm | 28 ++++++++++++++++++++++++++++ > catalogue/detail.pl | 15 +-------------- > catalogue/moredetail.pl | 15 ++------------- > 3 files changed, 31 insertions(+), 27 deletions(-) > >diff --git a/Koha/Items.pm b/Koha/Items.pm >index 90b178a1cef..04db9654aae 100644 >--- a/Koha/Items.pm >+++ b/Koha/Items.pm >@@ -398,6 +398,34 @@ sub apply_regex { > return $value; > } > >+=head3 search_ordered >+ >+ $items->search_ordered; >+ >+Search and sort items in a specific order, depending if serials are present or not >+ >+=cut >+ >+sub search_ordered { >+ my ($self) = @_; >+ >+ if ( $self->search({ select => ["enumchron IS NOT NULL"] }) ) { >+ return $self->search( {}, { order_by => 'enumchron' } ); >+ } else { >+ return $self->search( >+ {}, >+ { >+ order_by => [ >+ 'homebranch.branchname', >+ 'me.enumchron', >+ \"LPAD( me.copynumber, 8, '0' )", >+ {-desc => 'me.dateaccessioned'} >+ ], >+ join => ['homebranch'] >+ } >+ ); >+ } >+} > > =head2 Internal methods > >diff --git a/catalogue/detail.pl b/catalogue/detail.pl >index c042b1d3983..69012f439eb 100755 >--- a/catalogue/detail.pl >+++ b/catalogue/detail.pl >@@ -191,20 +191,7 @@ $template->param( > ); > > my $itemtypes = { map { $_->{itemtype} => $_ } @{ Koha::ItemTypes->search_with_localization->unblessed } }; >- >-my $all_items = $biblio->items( >- {}, >- { >- # FIXME A different order is expected if at least one items.serial is true >- order_by => [ >- 'homebranch.branchname', >- 'me.enumchron', >- \"LDAP( me.copynumber, 8, '0' )", >- -asc => 'me.dateacessioned' >- ], >- join => ['homebranch'] >- } >-); >+my $all_items = $biblio->items->search_ordered; > my @items; > my $patron = Koha::Patrons->find( $borrowernumber ); > while ( my $item = $all_items->next ) { >diff --git a/catalogue/moredetail.pl b/catalogue/moredetail.pl >index d1a2c612a8c..a4ed85e03ad 100755 >--- a/catalogue/moredetail.pl >+++ b/catalogue/moredetail.pl >@@ -108,19 +108,8 @@ output_and_exit( $query, $cookie, $template, 'unknown_biblio') > unless $biblio && $record; > > my $fw = GetFrameworkCode($biblionumber); >-my $all_items = $biblio->items( >- {}, >- { >- # FIXME A different order is expected if at least one items.serial is true >- order_by => [ >- 'homebranch.branchname', >- 'me.enumchron', >- \"LDAP( me.copynumber, 8, '0' )", >- -asc => 'me.dateacessioned' >- ], >- join => ['homebranch'] >- } >-); >+my $all_items = $biblio->items->search_ordered; >+ > my @items; > my $patron = Koha::Patrons->find( $loggedinuser ); > while ( my $item = $all_items->next ) { >-- >2.25.1
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 27272
:
128230
|
128231
|
135640
|
135641
|
135642
|
135643
|
135644
|
135645
|
135646
|
135647
|
135648
|
135649
|
135650
|
135651
|
135652
|
135653
|
135654
|
135655
|
135656
|
135657
|
135658
|
135659
|
137966
|
137967
|
137968
|
137969
|
137970
|
137971
|
137972
|
137973
|
137974
|
137975
|
137976
|
137977
|
137978
|
137979
|
137980
|
137981
|
137982
|
138109
|
138296
|
138297
|
138298
|
138303
|
138304
|
138305
|
138306
|
138307
|
138308
|
138437
|
138438
|
138439
|
138440
|
138441
|
138442
|
138553
|
138554
|
138555
|
138556
|
138557
|
138558
|
138559
|
138560
|
138561
|
138562
|
138563
|
138564
|
138565
|
138566
|
138567
|
138568
|
138569
|
138570
|
138571
|
138572
|
138573
|
138574
|
138575
|
138614
|
138615
|
138616
|
138617
|
138618
|
138619
|
138620
|
138621
|
138622
|
138623
|
138624
|
138625
|
138626
|
138627
|
138628
|
138629
|
138630
|
138631
|
138632
|
138633
|
138634
|
138635
|
138636
|
138714
|
138715
|
138716
|
138717
|
138718
|
138719
|
138720
|
138721
|
138722
|
138723
|
138724
|
138725
|
138726
|
138727
|
138728
|
138729
|
138730
|
138731
|
138732
|
138733
|
138734
|
138735
|
138736
|
138773
|
138774
|
138775
|
138776
|
138777
|
138778
|
138779
|
138780
|
138781
|
138782
|
138783
|
138784
|
138785
|
138786
|
138787
|
138788
|
138789
|
138790
|
138791
|
138792
|
138793
|
138794
|
138832
|
139928