Re-resolve supplier cancelled request

Description

References:

Following , when a supplier cancels a request, DCB should attempt to find an alternative supplier in the consortium to fulfil the request.

In Scope

Workflow

  1. Add check when request is in NOT_SUPPLIED_CURRENT_SUPPLIER (within ResolveNextSupplierTransition)

    1. If consortial policy is set to not support re-resolution, complete Terminate Supplier Cancelled Request as per

    2. If consortial policy is set to support re-resolution and

      1. if LMS does not support re-resolution, complete Terminate Supplier Cancelled Request as per

      2. If LMS supports re-resolution trigger resolution, excluding cancelling agency

        • call resolution process with extra parameter for cancelling agency derived from stored value on supplier request

  2. If alternative item is selectable, then

    1. copy DCB supplier request to table of cancelled supplier requests

    2. delete existing DCB supplier request … can no longer update supplier (which is likely deleted)

    3. create new DCB supplier request on existing DCB patron request

    4. set status of existing patron request to RESOLVED

      1. increment

      2. which triggers place request at new supplier for selected item

    5. if resolution count > 1 update borrower-pickup request (extend PlacePatronRequestAtBorrowingAgencyStateTransition)

      • item barcode

      • item type

      • note (with supplier details)

        • Polaris: virtual item, hold

        • Sierra: hold

      • agency item location (Sierra only)

  3. If no alternative item is selectable, complete Terminate Supplier Cancelled Request

Additional

  • Add consortial policy flag for re-resolution, exposing to DCB Admin

  • Add resolution count to patron request model, exposing to DCB Admin

    • Add migration for resolution count

    • Apply migration for resolution count to set to count of supplier requests for requests that do not have a resolution count

  • Add policy toggle to Re-resolving Supplier Cancelled Requests

  • Add problem report in line with existing transition error handling

    • Include details of step that has failed when attempting ResolveNextSupplierTransition

  • Add tests for deleting existing DCB supplier request

  • Add supplier request archive table

Out of Scope

  • Extend existing tests for non-Sierra LMS

  • Per-library / per-host configuration support for re-resolution

  • Ending re-resolution cycle: requests will continue to be re-resolved if supplier cancels; only an error or patron cancellation will terminate a request.

  • Deleting local supplier request and virtual patron

  • FOLIO support

  • Expose supplier request archive to graphql or DCB Admin

 

This is not currently possible on FOLIO. To maintain service parity, this enhancement will not be made for other library systems until FOLIO is re-request ready. At this point, the item barcode change is in scope.

Attachments

4

Activity

Show:

Tim Auger December 20, 2024 at 6:29 PM

I have opened a separate jira for the forced cleanup issue.

Tim Auger December 20, 2024 at 6:00 PM
Edited

The first paragraph in the previous comment (“re-resolution didn’t update the virtual records on Sierra systems as expected”) is because the virtual item location in Sierra was not updated. I missed this requirement and I have now added it above in the description. My apologies.

Tim Auger December 20, 2024 at 1:53 AM

This request re-resolution didn’t update the virtual records on Sierra systems as expected but I’m waiting a point of comparison tomorrow from CALS. Tomorrow, I will post the customer email thread to this Jira with a summary.

Also, I pressed the Forced Cleanup button for this request and learned that it’s not clearing the virtuals on Springfield’s Sierra. I’m also checking with CALS to see if there is any difference in the behavior.

Tim Auger December 18, 2024 at 11:28 PM
Edited

While I’m waiting, I confirmed that resolution count was incremented properly. But that’s just a baseline. I will need to wait until customers are available to test a resolution followed by a unsuccessful resolution.

Tim Auger December 18, 2024 at 8:59 PM
Edited

Sorry this is taking so long. One last test needs to be run: Sierra as suppliers and a Sierra borrower. That will happen tomorrow late morning central time.

Done

Details

Assignee

Reporter

Components

External issue

Target Version

Fix versions

Sprint

Due date

Priority

Created August 13, 2024 at 2:32 PM
Updated February 27, 2025 at 5:03 PM
Resolved January 6, 2025 at 5:32 PM