Age to lost: Add billing date and time when aging an item to lost - SET COST

Description

This is technical story needed to split effort for .

In scope of this story we have to implement Age to lost scheduled job described in the technical design.

Here is the overall algorithm of the job.

1. Scenario

  • Given Item Status NOT = 'Aged to lost' and NOT 'Claimed returned'

  • When:

    • Items aged to lost after overdue interval > 0;

    • System date is Items aged to lost after overdue interval (see Lost Item Fee policy) from item due date;

    • Lost item fee policy set to use Actual cost

  • Then:

    • Do no further aged to lost processing for item

2. Scenario (no lost item fee is charged immediately)

  • Given Item Status NOT = 'Aged to lost' and NOT 'Claimed returned'

  • When:

    • Items aged to lost after overdue interval > 0;

    • System date is Items aged to lost after overdue interval (see Lost Item Fee policy) from item due date;

    • Patron billed after aged to lost interval = 0 or blank;

    • Lost item fee policy Set cost = 0 or blank;

    • Charge lost item processing fee if item aged to lost by system = No

  • Then:

    • Item status and loan.itemStatus = 'Aged to lost';

    • No dateLostItemShouldBeBilled set;

    • No lostItemHasBeenBilled set;
      (Note: UIU-1500 will take care of changing the status of this item and closing the loan)

3. Scenario (no lost item fee is charged for delayed billing)

  • Given Item Status NOT = 'Aged to lost' and NOT 'Claimed returned'

  • When:

    • Items aged to lost after overdue interval > 0;

    • System date is Items aged to lost after overdue interval (see Lost Item Fee policy) from item due date;

    • Patron billed after aged to lost interval > 0;

    • Lost item fee policy Set cost = 0 or blank;

    • Charge lost item processing fee if item aged to lost by system = No

  • Then:

    • Item status and loan.itemStatus = 'Aged to lost';

    • Set lostItemHasBeenBilled = "false"

    • Set dateLostItemShouldBeBilled = calculated date based on Patron billed after aged to lost interval

4. Scenario (fees charged immediately/after some interval)

  • Given Item Status NOT = 'Aged to lost' and NOT 'Claimed returned'

  • When:

    • Items aged to lost after overdue interval > 0;

    • System date is Items aged to lost after overdue interval (see Lost Item Fee policy) from item due date;

    • Patron billed after aged to lost interval > 0, is 0 or blank;

    • Any lost fee (lost item or lost item processing fee or both) has to be charged;

  • Then:

    • Item status and loan.itemStatus = 'Aged to lost';

    • Set dateLostItemShouldBeBilled= calculated date based on Patron billed after aged to lost interval;

    • Set lostItemHasBeenBilled = "false"

Acceptance criteria:

  • Unit tests are created;

Notes:

  • Dev only story;

Environment

None

Potential Workaround

None

Attachments

1

Checklist

hide

TestRail: Results

Activity

Show:

Bohdan Suprun August 19, 2020 at 10:18 AM

Merged to master, closing as dev only.

Done

Details

Assignee

Reporter

Labels

Priority

Story Points

Sprint

Development Team

Prokopovych

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created July 21, 2020 at 1:18 PM
Updated September 21, 2020 at 1:44 PM
Resolved August 19, 2020 at 10:18 AM
TestRail: Cases
TestRail: Runs