Bug 17736: Replace GetReservesFromBiblionumber with Koha::Biblio->holds
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Wed, 7 Dec 2016 02:29:01 +0000 (02:29 +0000)
committerKyle M Hall <kyle@bywatersolutions.com>
Fri, 31 Mar 2017 12:02:14 +0000 (12:02 +0000)
commit87afa5142bd12c0d5ff630dbf27d8703ca0ea131
tree3ec6bc933af772a52945071143a66ce7a01d0624
parent42d110a774b65549241e191882f87a89fc312329
Bug 17736: Replace GetReservesFromBiblionumber with Koha::Biblio->holds

The C4::Reserve::GetReservesFromBiblionumber took 3 parameters, the
biblionumber, an optional itemnumber and a "all_dates" flag.
If set, the subroutine returned all the holds placed on a given bibliographic
record, even the ones placed in the future. Almost all of the calls had this
flag set, they will be replaced with a call to Koha::Biblio->holds.

But 5 did not have it:
- C4::Biblio::DelBiblio
-tools/batch_delete_records.pl
=> These 2 were wrong, we want to retrieve the holds to cancel them
before deleting the record. We need to get all the holds, even the ones
placed in the future /!\ CHANGE IN THE BEHAVIOR

- acqui/parcel.pl
=> 1 call per item were made to this subroutine. They have been replaced
with only 1 call to the new method Koha::Biblios->holds_placed_before_today
Then we filter on the itemnumbers.
I think this is wrong: we need the number of holds to know if the record
can be deleted, so even if future holds exist, the deletion should not
be possible.

- serials/routing-preview.pl
- C4::ILSDI::Services::GetRecords
- C4::SIP::ILS::Item->new
=> Seems ok, we just one to display holds placed before today

Test plan:
I would suggest to test this patch with patches from bug 17737 and bug 17738,
to place different kind of holds (biblio and item level, future and
past).
Then do a whole workflow to detect bug, view a record, delete record,
order, place a hold on an item which has been ordered, etc.
The hold's informations should always be the same without or without
these patches.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
18 files changed:
C4/Biblio.pm
C4/ILSDI/Services.pm
C4/SIP/ILS/Item.pm
acqui/parcel.pl
catalogue/ISBDdetail.pl
catalogue/MARCdetail.pl
catalogue/detail.pl
catalogue/imageviewer.pl
catalogue/labeledMARCdetail.pl
catalogue/moredetail.pl
koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_delete_records.tt
opac/opac-detail.pl
opac/opac-reserve.pl
serials/routing-preview.pl
t/db_dependent/Holds.t
t/db_dependent/Reserves.t
t/db_dependent/UsageStats.t
tools/batch_delete_records.pl