Uploaded image for project: 'ui-circulation'
  1. ui-circulation
  2. UICIRC-52

View/Edit Hold Slip




      Purpose: Initially, we'd like to rough-in this functionality for a hold slip (one type of staff slip). Hold slips are the simplest form of a staff slip with an agreed upon set of triggers and conditions. With this first pass, the agreed upon triggers and conditions are predefined (and not editable by system admins). Long-term goal is to include functionality for different types of slips to be printed for more staff workflow/routing purposes, and allow for custom slips to be defined as well as some customization of predefined (out of the box) slips.

      As a circulation user, I want a slip to print automatically when an item is checked in if that item has been requested by another patron and is being checked in at the requested location. The slips are placed in the item and the item is placed on hold shelf. (see https://issues.folio.org/browse/UICHKIN-16 for reference).

      As a system administrator who is setting up staff slips
      I want to be able to defined new and edit/customize existing slips
      so that staff workflows, such as routing an item between libraries or holding an item at the circulation desk, can be supported
      (NOTE: this fuller story is out of scope for this first pass)

      As a system administrator who is setting up hold slips
      I want to be able to view and edit/customize the name, description, active/inactive, and most importantly, the output of the hold slip
      so that it is more relevant to my library and/or institution


      Scenario 1:

      • Given Settings > Circulation
      • When options are displayed
      • Then a "Staff slips" option should be displayed

      Scenario 2:

      • Given Settings > Circulation > Staff slips
      • When options are displayed
      • A list of slips will be shown with the RU (of CRUD) interface. First pass - just "Hold" slip is shown.
        • Create/new is out of scope for this first pass, and delete will not be an option for predefined/out of the box slips. Instead of delete, administrators will be allowed to indicate a predefined slip is inactive.
        • Use same UX pattern seen in settings for other CRUD interfaces.

      Scenario 3:

      • Given Settings > Circulation > Staff slips > Hold (view)
      • When details are shown
      • Then the following is shown as non-editable fields
        • Name
        • Active/Inactive status
        • Description
        • Display/Preview of actual slip, this includes labels and tokens
      • And an edit button option is shown

      Scenario 4:

      • Given Settings > Circulation > Staff slips > Hold (edit)
      • When edit form is shown
      • Then the following is displayed as inputs/editable fields:
        • Title - (Not editable because it's a predefined/out of the box slip)
        • Active/Inactive - toggle (Required)
        • Description - text area (Optional)
        • Output/Display as a text area with a rich-text editor with ability to insert tokens (for field values) (Required)

      Scenario 5:

      • Given rich-text editor
      • When a user is defining and/or customizing the output or display of hold slip
      • Then the following styling elements are available and displayed (exactly which styling elements are available is up for discussion with developers)
        • Bold
        • Italic
        • Font
        • Font size
        • Font color
        • Align left, center, right
        • Increase indent
        • Decrease indent
        • Insert token shown as {} for icon and possible fields for tokens include (up for discussion with developers, perhaps first pass should just be a list of available tokens shown on page instead of an insert button?):
          • Requester last name
            • Populates with requester's last name at the top of the queue
          • Requester first name
            • Populates with requester's first name at the top of the queue
          • Requester ID (will FOLIO have unique identifiers for patrons? this is mainly needed in the case that you have two requesters with the same name)
            • Populates with requester's ID at the top of the queue
          • Item title - populates with title of item
          • Item barcode - populates with image of barcode of item
          • Item call number - populates with call number of item
          • Request/transaction number (is there a request or transaction ID in the system when an item is requested?)
          • Hold Expiration - populates with expiration date for hold on this item

      Scenario 6:

      • Given Hold slip edit screen
      • When the preview button is clicked
      • Then the output for the hold slip is displayed as it would print using placeholders for tokens (on a modal window)

      Scenario 7:

      • Given Hold slip preview modal
      • When the print icon is clicked
      • Then the output for the hold slip is printed as it would print using placeholders for tokens

      Out of scope:

      • All other slips, routing, pull requests, item delivery and rush notify, and custom slips.
      • User defined triggers and conditions
      • Create a new slip
      • Delete a predefined slip
      • Defining printers for a given location

      TestRail: Results


          1. 1 Starting Point.png
            110 kB
            Darcy Branchini
          2. 2 View.png
            93 kB
            Darcy Branchini
          3. 3 Edit - predefined staff slip.png
            111 kB
            Darcy Branchini
          4. 4 Edit - insert token.png
            100 kB
            Darcy Branchini
          5. 5 Edit - preview staff slip.png
            104 kB
            Darcy Branchini
          6. hold-slips.webm
            2.22 MB
            Michal Kuklis
          7. Should this be Name or Title.JPG
            66 kB
            Ann-Marie Breaux

          Issue Links



                mpk35 Michal Kuklis
                dbranchini Darcy Branchini
                0 Vote for this issue
                4 Start watching this issue



                  TestRail: Runs

                    TestRail: Cases