]> git.koha-community.org Git - koha.git/commit
Bug 29570: Fix sorting orders by biblioitems columns
authorTomas Cohen Arazi <tomascohen@theke.io>
Wed, 2 Feb 2022 20:04:08 +0000 (17:04 -0300)
committerFridolin Somers <fridolin.somers@biblibre.com>
Tue, 15 Feb 2022 07:41:38 +0000 (21:41 -1000)
commit1e8ead9727bf2832dd5589e0f45b55f5ee46fa32
treefd420d746d3710332473277055f940415f37ad1e
parent696bd24dfeaf177648e9b8dc7c4d54284ce225ce
Bug 29570: Fix sorting orders by biblioitems columns

The API representation of Koha::Biblio objects includes the
biblioitems.* columns too. This proved problematic as queries had to get
translated so they work (i.e. if a query passes q={"biblio.ean":"123%"}
then the query needs to be tweaked so biblio.ean is translated into
biblio.biblioitem.ean. This is solved, locally, in the controller.

But sorting needs the same kind of tweak, and it was missing. This patch
solves that by doing a similar conversion.

To test:
1. Apply the regression tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/acquisitions_orders.t
=> FAIL: Tests fail, searching on a 'biblioitems' column generates a 500
error.
3. Apply this patch
4. Repeat 2
=> SUCCESS: Tests pass! We can sort on those fields
5. Sign off :-D

Note: you will notice the tests only cover sorting by ISBN. I consider
it enough as sorting is a DB problem, and we only want to know if the
generated ORDER BY is valid for the underlying query, and MySQL would
complain if it wasn't the case.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Koha/REST/V1/Acquisitions/Orders.pm