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

Circulation Rules Editor - Integrate Organization Hierarchy Menus

    XMLWordPrintable

    Details

    • Template:
    • Development Team:
      Concorde

      Description

      Purpose:
      To extend the functionality of the existing loan rules editor to include the addition of new hierarchical organization attributes (i.e., Institution, Campus, Library) in encoded circulation rules. Note that while the editor currently has an existing designated syntax (and associated icons) for these attributes, they are not yet fully functional in the system. These new attributes are used in conjunction with other patron and item-related attributes, as well as appropriate policies to create 'circulation rules'. As the system performs an action, such as an item checkout or recall request for an item, the appropriate circulation rule is chosen and the associated policy pertinent to the incoming query is retrievable. Organizational hierarchies are parent components of configured Locations in FOLIO. When a circulation event occurs related to an item in FOLIO, the circulation rules are queried to determine the most appropriate match giving the incoming patron and item details. The addition of the organizational hierarchies will allow for rules to be configured efficiently at the desired level, and have the rule be inherited by library collection items configured with appropriate child Locations to the parent hierarchy.

      Description:

      • Fully implement the organization/location hierarchy such that:
        a - corresponds to a menu for the configured Institution list (Settings>Tenant>Institution)
        b - corresponds to a menu for the configured Campus list (Settings>Tenant>Campus)
        c - corresponds to a menu for the configured Library list (Settings>Tenant>Library)

      When implementing, the menu should always default to the top level Institution list, but the specific value used should tell the editor how far down the tree to go. c for example, should allow for Institution>Campus>Library, while b would allow for Institution>Campus. By defaulting to the top-level (i.e., Institution) for each selection, the user is ensured of selecting a lower level value that is contained appropriately within the hierarchy. This is done to avoid ambiguity that may be caused by location-related code values that may be unique within their specific hierarchy, but ambiguous if the specific hierarchical path was not used to make the appropriate selection.

      *Note: selections from the menu should allow the full view of 'Code (Parent Code/s)', but only write the Code for the appropriate organizational level in the Rule.
      E.g., Menu: Library: PER (DUK-WC)
      Rule= c PER

      Scenario 1: Institution selection

      • Given the circulation rule editor
      • When adding/editing a new circulation rule and
      • When editing the attributes section of the rule (i.e., before a colon ':' has been entered on the line)
      • When typing a following a space
      • Then display in the editor a menu that contains the configured list of Institutions
      • When clicking any individual Institution Code entry (e.g., DUK)
      • Then close the menu and the entry should appear in the editor on the rule line in the form:
        a DUK

      Scenario 2: Campus selection

      • Given the circulation rule editor
      • When adding/editing a new circulation rule and
      • When editing the attributes section of the rule
      • When typing b following a space
      • Then display in the editor an expandable menu that contains the configured list of Institution Codes
      • When clicking on the desired Institution Code, e.g., DUK
      • Then display in the editor a menu that contains the configured list of Campus Codes (limited to those configured in FOLIO as children of the selected parent Institution)
      • When clicking any individual Campus Code entry, e.g., WC (DUK)
      • Then close the menu and the entry should appear in the editor on the rule line in the form:
        b WC

      Scenario 3: Library selection

      • Given the circulation rule editor
      • When adding/editing a new circulation rule and
      • When editing the attributes section of the rule
      • When typing c following a space
      • Then display in the editor an expandable menu that contains the configured list of Institution Codes
      • When clicking on the desired Institution Code, e.g., DUK
      • Then display in the editor a menu that contains the configured list of Campus Codes (limited to those configured in FOLIO as children of the selected parent Institution)
      • When clicking any individual Campus Code entry, e.g., WC (DUK)
      • Then display in the editor a menu that contains the configured list of Library Codes (limited to those configured in FOLIO as children of the selected parent Campus)
      • When clicking any individual Library Code entry, e.g., PER (DUK-WC)
      • Then close the menu and the entry should appear in the editor on the rule line in the form:
        c PER

      Scenario 4: Any selection from intermediate menu

      • Given Scenario 3 above
      • If user selects Any from the Campus menu
      • Then the Library menu will display a list of Library Codes for ALL Campuses configured in FOLIO (essentially, it allows the user to bypass the Campus menu and retrieve an unfiltered list of all available Library Codes)
      • Then user continues as the rest of Scenario 3 describes

      Scenario 5: Any selection from a final menu

      • Given Scenario 2 or 3 above
      • If user selects Any from a final menu
      • Then the rule that is written will encode the last 'non-Any' value selection made from preceding menu
      • e.g., In Scenario 2, if Any is chosen from the Campus menu, then the encoded rule would contain:
      • a DUK
      • e.g., in Scenario 3, if Any is chosen from the Library menu and WC (DUK) is chosen earlier in the Campus menu, then the encoded rule would contain:
      • b WC

      *Note: in Scenarios 5, there is no difference in the editor's interpretation of a rule, between selecting Any (interpreted similarly to a Boolean OR) from the final menu and simply setting the rule to the value of a higher-level Organization

      **Note: when selected codes are written to the rule line, the editor should ensure that a space exists between the attribute syntax (a, b, c) and the chosen code, either as entered by the user or padded as part of installing the chosen code.

      ***Note: See attached menu wireframes

      ****Note: UICIRC-259 describes a continuation of the editor to a 4th level - Location. It has been described separately to break apart the work into more manageable stories and to allow for additional interface features currently confined to the Location menu. While UICIRC-259 is out of scope for this story, it should remain in consideration about how these menus work together

        TestRail: Results

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                yevhenii_maltsev Yevhenii Maltsev (Inactive)
                Reporter:
                Sean Thomas Sean Thomas
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases