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

Extend fee/fine tokens available for notices

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Closed (View Workflow)
    • Priority: P3
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 3.0.0
    • Labels:
      None
    • Template:
    • Sprint:
      EPAM-Veg Sprint 41
    • Story Points:
      2
    • Development Team:
      Vega

      Description

      Use cases - Manual fee/fines

      • A patron rents a locker for $15.00. No items are associated with this fee. At the time of charge, a notice will be sent to the patron to indicate the fee they've incurred.
      • A patron pays $15.00 for locker fee. At the time of the payment, a notice will be sent to the patron to indicate a payment of $15.00 was received and there's no remaining balance.
      • A patron rented a locker for $15.00 and now the fee is partially waived in the amount of $10.00. At the time of the partial waiver, a notice will be sent to indicate that the original fee charged was $15.00, $10.00 was waived and there's a $5.00 remaining balance.
      • A patron rented a locker for $15.00, $10.00 was waived earlier, and now $5.00 is paid. At time time of the payment, a notice will be sent to indicate that the original fee charged was $15.00, $10.00 was waived (on x date or previously), and $5.00 was received and there's no remaining balance. (Note, this requires more than one action listed on notice.)
      • A patron returns an item that is damaged. A $20.00 fee is incurred. At the time of charge, a notice will be sent to the patron to indicate the fee they've incurred with a reference to the damaged item.

      Use cases - Automated fee/fines

      • A patron borrows an item, it's overdue. The patron returns or renews the item on day 5. The policies are setup so that a fee of starts on day 3 at a rate of $1.00/day and notices are sent upon charge. A notice is sent to the patron indicating they've incurred a fee of $2.00 (with reference to the item returned/renewed late.
      • A patron borrows an item, and later declares it lost. The policies are setup so that a lost processing fee of $10.00 and cost to replace item of $45.00 and notices are sent upon charge.
        • Ideally (OUT OF SCOPE for first iteration), a single notice is sent to the patron indicating they've incurred two fees.
        • Instead two notices are sent to the patron. One for each of the fees they've incurred.

      Template categories

      Scenario 1

      • Given a notice template
      • When category select options are displayed
      • Then the following options should be changed:
        • From Automated fee/fine to Automated fee/fine charge or adjustment
        • From Fee/fine charge to Manual fee/fine charge
        • From Fee/fine action to Fee/fine action (pay, waive, refund, transfer or cancel in error)
        • Remove "Other"

      Fee/fine tokens

      Scenario 2

      • Given edit or create screen for a patron notice template with a category of "Automated fee/fine charge or adjustment"
      • When the curly braces icon (for inserting a new token) are clicked in the rich text editor
      • Then the following fee/fine charge tokens are available (from account record):
        • feeCharge.owner
        • feeCharge.type
        • feeCharge.paymentStatus
        • feeCharge.date
        • feeCharge.dateTime
        • feeCharge.amount
        • feeCharge.remainingAmount
      • And all item tokens are available
        • NOTE: from the ff record when possible, otherwise from the item record
          • item.allContributors is not on fee/fine record
          • item.callNumber is on the fee/fine record, but there might be a change to what is saved on the ff record
      • And all item effective location tokens are available:
        • NOTE: from the ff record when possible, otherwise from the item record
          • item.effectiveLocationLibrary is the only one on the fee/fine record, but again, there might be a change to include other parts of effective location on the ff record
      • And all loan tokens are available
        • NOTE: from the ff record when possible, otherwise from the loan record
      • And all user tokens are available
      • And all unavailable tokens are disabled/greyed out (UICIRC-459)

      Scenario 3

      • Given edit or create screen for a patron notice template with a category of "Manual fee/fine charge"
      • When the curly braces icon (for inserting a new token) are clicked in the rich text editor
      • Then the following fee/fine charge tokens are available (from account record):
        • feeCharge.owner
        • feeCharge.type
        • feeCharge.paymentStatus
        • feeCharge.date
        • feeCharge.dateTime
        • feeCharge.amount
        • feeCharge.remainingAmount
        • feeCharge.additionalInfo
      • And all item tokens are available
        • NOTE: from the ff record when possible, otherwise from the item record
          • item.allContributors is not on fee/fine record
          • item.callNumber is on the fee/fine record, but there might be a change to what is saved on the ff record
      • And all item effective location tokens are available
        • NOTE: from the ff record when possible, otherwise from the item record
          • item.effectiveLocationLibrary is the only one on the fee/fine record, but again, there might be a change to include other parts of effective location on the ff record
      • And all loan tokens are available
        • NOTE: from the ff record when possible, otherwise from the loan record (Darcy has a question about this)
      • And all user tokens are available
      • And all unavailable tokens are disabled/greyed out (UICIRC-459)

      Scenario 3

      • Given edit or create screen for a patron notice template with a category of "Fee/fine action (pay, waive, refund, transfer or cancel in error)"
      • When the curly braces icon (for inserting a new token) are clicked in the rich text editor
      • Then the following fee/fine charge tokens are available (from account record):
        • feeCharge.owner
        • feeCharge.type
        • feeCharge.paymentStatus
        • feeCharge.date
        • feeCharge.dateTime
        • feeCharge.amount
        • feeCharge.remainingAmount
      • Then the following fee/fine action tokens are available (from action record):
        • feeAction.type
        • feeAction.date
        • feeAction.dateTime
        • feeAction.amount
        • feeAction.remainingAmount
        • feeAction.additionalInfo
        • feeAction.reasonForCancellation
      • And all item tokens are available
        • NOTE: from the ff record when possible, otherwise from the item record
          • item.allContributors is not on fee/fine record
          • item.callNumber is on the fee/fine record, but there might be a change to what is saved on the ff record
      • And all item effective location tokens are available:
        • NOTE: from the ff record when possible, otherwise from the item record
          • item.effectiveLocationLibrary is the only one on the fee/fine record, but again, there might be a change to include other parts of effective location on the ff record
      • And all loan tokens are available
        • NOTE: from the ff record when possible, otherwise from the loan record
      • And all user tokens are available
      • And all unavailable tokens are disabled/greyed out (UICIRC-459)

      Multiple fee/fine actions

      See multiple loans for reference – UICIRC-304
      NOTE: Let me know if you prefer this functionality to be pulled out into separate story.

      Scenario 4

      • Given edit or create mode for a patron notice template with a category of "Fee/fine action (pay, waive, refund, transfer or cancel in error)"
      • When the curly braces icon (for inserting a new token) are clicked in the rich text editor
      • Then a "Multiple fee/fine actions" checkbox for multiple actions is displayed as option

      Scenario 5

      • Given edit or create mode for a patron notice template with a category of "Fee/fine action (pay, waive, refund, transfer or cancel in error)"
      • When the "Multiple fee/fine actions" checkbox is checked
      • Then the template displays
        {#feeActions}
           {feeAction.amount
           ...
        {/feeActions}
        

      Scenario 6

      • Given a patron notice template
      • When previewed by FOLIO operator
      • Then the following preview/default values should be displayed for each of these tokens:
      • CHARGE:
        • feeCharge.owner (Preview value: Main Library)
        • feeCharge.type (Preview value: Damaged Item)
        • feeCharge.paymentStatus (Preview value: Outstanding)
        • feeCharge.date (Preview value: (Preview value: Jun 30, 2020)
        • feeCharge.dateTime (Preview value: Jun 30, 2020 11:00)
        • feeCharge.amount (Preview value: $15.00)
        • feeCharge.remainingAmount (Preview value: $5.00)
        • feeCharge.additionalInfo (Preview value: This is a text field intended to provide additional information for the patron regarding the fee/fine.)
      • ACTION (assuming loop) perhaps this is too difficult to implement as a loop?
        • feeAction.type (Preview value: Waived partially, Paid partially)
        • feeAction.date (Preview value: Jul 10, 2020, Jul 15, 2020)
        • feeAction.dateTime (Preview value: Jul 10, 2020 8:00, Jul 15, 2020 15:00)
        • feeAction.amount (Preview value: $5.00, $5.00)
        • feeAction.remainingAmount (Preview value: $10.00, $5.00)
        • feeAction.additionalInfo (Preview value: Cost to repair less than expected.; Thank you for the payment.)
        • feeAction.reasonForCancellation – REMOVE from token list (apparently this is for staff purposes only... just not clear on the form that this is what's it's for.)

      USE CASES:
      Charges may be partially waived, transferred, and/or paid and any combination of those actions. If a FOLIO operator is doing any of these actions, they are prompted whether or not they want to send a notice. If they choose to send a notice and the template includes a multiple actions token, then each action that's taken place with the date or date/time that it happened. If they choose to send a notice and the template does not include a multiple actions token, then only the most recent action is referenced. And finally, they choose to not send a notice, then a notice is not sent.

      NOTE:
      Multiple charges is OUT OF SCOPE for this story so that option should be hidden. (And since multiple requests is not supported yet, it also could be hidden.)

        TestRail: Results

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                maxim_didenko Maxim Didenko
                Reporter:
                dbranchini Darcy Branchini
                Tester Assignee:
                Darcy Branchini Darcy Branchini
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases