action.hold_request_permit_test should consult proximity adjustments

Bug #1841974 reported by Blake GH
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Wishlist
Unassigned

Bug Description

EG 3.1 and 3.3

I've ran into an interesting scenario where two library systems want to share items including items with age protection. This seems possible with the proximity adjustment feature in Evergreen but it doesn't seem to work. The SQL function action.hold_request_permit_test has plenty of logic dealing with age protection and subsequently respecting the proximity pertaining to the age protection rules. But I don't see anywhere in the code where (at hold placement time) does Evergreen respect the proximity adjustment overrides.

It should be possible for a patron not to get the dreaded "config.rule_age_hold_protect.prox" error message when placing holds across systems who have a proximity adjustment that is lower or equal to the age protection proximity.

Revision history for this message
Mike Rylander (mrylander) wrote :

The top commit of the branch at https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/miker/lp-1841974-calc-prox-for-age-protect implements this request by refactoring the proximity adjustment calculation code so we can call it from more places. In this case, from the hold permit test when a particular (new) YAOUS is in place and set to true. The decision about whether to use adjusted or baseline proximity is left to the item's circulating library.

tags: added: holds pullrequest
Andrea Neiman (aneiman)
Changed in evergreen:
milestone: none → 3.next
importance: Undecided → Wishlist
Revision history for this message
Andrea Neiman (aneiman) wrote :

Noting that per earlier conversation, the language for the YAOUS "Use calculated proximity for age-protection test" and "When testing whether a copy is viable for a hold based on transit distance, use calculated proximity with adjustments rather than baseline Org Unit proximity" might be more clear if "check/checking" were used instead of "test/testing"

If test/testing is the general language that everyone's familiar in this particular area, I won't die on this hill, but from an end user perspective I think "check" is more clear.

Revision history for this message
Nelson Appell (nappell) wrote :

I have tested the fix. My library can now put age-protected items on hold from the other library and have them delivered to us (and vice-versa). This is an important fix for our patrons, and will allow us to share our collections fully, per our agreement with the other library. This fix allows the libraries to share their collections while remaining separate entities in the Evergreen hierarchy, which makes it easier for patrons and the library staff for a variety of reasons.

Revision history for this message
Mike Rylander (mrylander) wrote :

I've pushed a rebased and terminology-adjusted branch up to the same location.

Revision history for this message
Diane Disbro (ddisbro) wrote :

I have tested this code and consent to signing off on it with my name, Diane Disbro, and my email address, <email address hidden>.

Revision history for this message
Nelson Appell (nappell) wrote :

I have tested this code and consent to signing off on it with my name, Nelson Appell, and my email address, <email address hidden>.

Andrea Neiman (aneiman)
Changed in evergreen:
status: New → Confirmed
tags: added: signedoff
Jason Boyer (jboyer)
Changed in evergreen:
assignee: nobody → Jason Boyer (jboyer)
milestone: 3.next → 3.6-beta
Revision history for this message
Jason Boyer (jboyer) wrote :

Pushed to master with minor corrections for inclusion in 3.6; thanks Mike, Diane, and Nelson!

Changed in evergreen:
status: Confirmed → Fix Committed
assignee: Jason Boyer (jboyer) → nobody
Changed in evergreen:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.