Koha-clms/Koha/ERM
Tomás Cohen Arazi 713c5c3343
Bug 41950: (follow-up) Add DBIC relationship aliases for +count embeds
Adds DBIC relationship aliases so that +count embeds advertised in
the API specs are backed by actual database relationships, making
them sortable via the SQL COUNT subquery infrastructure.

New aliases:
- Borrower: checkouts (issues)
- Aqbookseller: baskets (aqbaskets), invoices (aqinvoices)
- Ticket: updates (ticket_updates)
- ErmEholdingsPackage: resources (erm_eholdings_resources)
- Biblio: holds (reserves)

Koha methods are updated to use the new relationship names directly,
following the one-liner style: Koha::Foo->_new_from_dbic( scalar ... )

Note: checkouts on Borrower and subscriptions on Aqbookseller already
had matching DBIC relationships. comments on Illrequest, requests on
IllBatch, and items on Biblio also already existed.

Test plan:
1. Apply patch
2. Run:
   $ ktd --shell
   k$ prove t/Koha/REST/Plugin/Query.t \
       t/db_dependent/api/v1/patrons.t \
       t/db_dependent/api/v1/acquisitions_vendors.t \
       t/db_dependent/Koha/REST/Plugin/Objects.t \
       t/db_dependent/Koha/Biblio.t
=> SUCCESS: All tests pass
3. Verify sorting works:
   GET /api/v1/patrons
   x-koha-embed: checkouts+count
   _order_by: -me.checkouts_count
=> SUCCESS: Patrons sorted by checkout count
4. Sign off :-D

Assisted-by: Sonnet 4.6 (Anthropic)
Signed-off-by: Pedro Amorim <pedro.amorim@openfifth.co.uk>
2026-06-29 16:19:49 +00:00
..
Agreement Bug 39438: Add additional fields support to ERM agreement periods 2026-01-30 10:54:10 -07:00
EHoldings Bug 41950: (follow-up) Add DBIC relationship aliases for +count embeds 2026-06-29 16:19:49 +00:00
EUsage Bug 40163: (follow-up) Fix wrong GNU links and update test 2025-09-24 09:25:04 -06:00
Providers Bug 38664: Tidy the whole codebase 2025-02-11 14:58:24 +01:00
Agreement.pm Bug 39438: Add additional fields support to ERM agreement periods 2026-01-30 10:54:10 -07:00
Agreements.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Document.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Documents.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
License.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Licenses.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
UserRole.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
UserRoles.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00