Uploaded image for project: 'ui-requests'
  1. ui-requests
  2. UIREQ-246

Hold Shelf Expiration Date Should Respect Closed Library Dates

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Open (View Workflow)
    • Priority: P3
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Template:
    • Story Points:
      3
    • Development Team:
      Vega

      Description

      Purpose: We implemented the hold shelf expiration date setting as part of CIRC-194. This works great except that it is not respecting the closed library dates when setting the date. Since institutions want to put the hold shelf expiration dates into their patron notices, it would be best if those dates we days on which the library was actually open.

      User story:
      As a patron who has received a message that my requested item is awaiting pickup
      I want to be given a request expiration date that is a day the service point is open
      So I don't plan to pick it up on a given date only to find the service point is closed

      NOTE: Closed library due date management has already been implemented for calculating due dates. See: UICHKOUT-451 for details

      Scenarios:
      Long-term expiry periods (Months|Weeks|Days):

      1. Scenario
        • Given Hold shelf expiry period, which has Expiry period = X Months|Weeks|Days AND Closed Library Date Management = Keep the original date
        • When Hold shelf expiration date/time is automatically set on a request (see CIRC-194 for details on when that is set)
        • When request Pickup service point is Service Point ID SPID-1
        • If SPID-1 is determined to be CLOSED for system-calculated hold expiration date
        • Then the hold shelf expiration date should remain unchanged from system calculated hold shelf expiration date, and the hold shelf expiration time should be 11:59:59PM*
      2. Scenario
        • Given Hold shelf expiry period, which has Expiry period = X Months|Weeks|Days AND Closed Library Date Management = Move to the end of the previous open day
        • When Hold shelf expiration date/time is automatically set on a request (see CIRC-194 for details on when that is set)
        • When request Pickup service point is Service Point ID SPID-1
        • If SPID-1 is determined to be CLOSED for system-calculated hold expiration date
        • Then the hold expiration date/time stamp should be changed to 11:59:59PM* for the closest previous Open=true day for SPID-1
      3. Scenario
        • Given Hold shelf expiry period, which has Expiry period = X Months|Weeks|Days AND Closed Library Date Management = Move to the end of the next open day
        • When Hold shelf expiration date/time is automatically set on a request (see CIRC-194 for details on when that is set)
        • When request Pickup service point is Service Point ID SPID-1
        • If SPID-1 is determined to be CLOSED for system-calculated hold expiration date
        • Then the hold expiration date/time stamp should be changed to 11:59:59PM* for the closest next Open=true day for SPID-1

      *Note: Should be the equivalent of 11:59:59PM for the tenant's local timezone.

      Short-term expiry periods (Hours|Minutes):

      1. Scenario
        • Given Hold shelf expiry period, which has Expiry period = X Hours|Minutes AND Closed Library Date Management = Keep the original date/time
        • When Hold shelf expiration date/time is automatically set on a request (see CIRC-194 for details on when that is set)
        • When request Pickup service point is Service Point ID SPID-1
        • If SPID-1 is determined to be CLOSED for system-calculated hold expiration date/time
        • Then the hold shelf expiration date should remain unchanged from system calculated hold shelf expiration date
      2. Scenario
        • Given Hold shelf expiry period, which has Expiry period = X Hours|Minutes AND Closed Library Date Management = Move to the end of the current service point hours
        • When Hold shelf expiration date/time is automatically set on a request (see CIRC-194 for details on when that is set)
        • When request Pickup service point is Service Point ID SPID-1
        • If SPID-1 is determined to be CLOSED for system-calculated hold expiration date/time
        • Then the hold shelf expiration date should be changed to the endTime of the current service point for SPID-1 (i.e., truncating the hold shelf expiry period)
      3. Scenario
        • Given Hold shelf expiry period, which has Expiry period = X Hours|Minutes AND Closed Library Date Management = Move to the beginning of the next open service point hours
        • When Hold shelf expiration date/time is automatically set on a request (see CIRC-194 for details on when that is set)
        • When request Pickup service point is Service Point ID SPID-1
        • If SPID-1 is determined to be CLOSED for system-calculated hold expiration date/time
        • Then the hold shelf expiration date should be changed to the earliest SPID-1 startTime for the closest next Open=true available hours for SPID-1 (Note that the system needs to logically consider 'rollover' scenarios where the service point remains open for a continuity of hours that flow from one system date into the next - for example, a service point that remains open until 2AM; then reopens at 8AM. In such a scenario, the system should consider the '...beginning of the next open service point hours' to be 8AM. <NEED TO CONSULT WITH SEAN THOMAS AND/OR VEGA ON HOW THIS WAS EVENTUALLY HANDLED>

        TestRail: Results

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                Unassigned Unassigned
                Reporter:
                cboerema Cate Boerema
                Votes:
                1 Vote for this issue
                Watchers:
                1 Start watching this issue

                  Dates

                  Created:
                  Updated:

                    TestRail: Runs

                      TestRail: Cases