Uploaded image for project: 'mod-circulation'
  1. mod-circulation
  2. CIRC-852

Age to lost: Assign lost fees for aged to lost loans - SET COST

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Closed (View Workflow)
    • Priority: P2
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 19.1.0
    • Labels:
    • Template:
    • Sprint:
      Core: F - Sprint 95, Core: F - Sprint 96, Core: F - Sprint 97
    • Story Points:
      13
    • Development Team:
      Prokopovych

      Description

      This is technical story needed to split effort for CIRC-737.

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

      Here is the overall algorithm of the job.

      1. Scenario

      • Given Item Status = 'Aged to lost' and Loan Record field lostItemHasBeenBilled = "false"
      • When Loan Record field dateLostItemShouldBeBilled > System Date
      • Then:
        • Do no further aged to lost processing for item

      2. Scenario

      • Given Item Status = 'Aged to lost' and Loan Record field lostItemHasBeenBilled = "false"
      • When:
        • Loan Record field dateLostItemShouldBeBilled <= System Date;
        • Lost item fee policy set to use Actual cost
      • Then:
        • Set lostItemHasBeenBilled = "true" (Per Holly)
        • Do no further aged to lost processing for item
          (Note: UIU-1500 will take care of changing the status of this item and closing the loan)

      3. Scenario

      • Given Item Status = 'Aged to lost' and Loan Record field lostItemHasBeenBilled = "false"
      • When:
        • Loan Record field dateLostItemShouldBeBilled <= System Date;
        • Lost item fee policy Set cost = 0 or blank;
        • Charge lost item processing fee if item aged to lost by system = No
      • Then:
        • Set lostItemHasBeenBilled to "true"
        • Set dateLostItemShouldBeBilled to blank
        • Do no further aged to lost processing for item

      4. Scenario (any (both) lost fee is assigned)

      • Given Item Status = 'Aged to lost' and Loan Record field lostItemHasBeenBilled = "false"
      • When:
        • Loan Record field dateLostItemShouldBeBilled <= System Date;
        • Any lost fee (Lost item or Lost item processing or both) should be charged;
      • Then:
        • Set lostItemHasBeenBilled to "true"
        • Set dateLostItemShouldBeBilled to blank
        • Assign lost item fee (if applicable):
          • Fee/fine type = "Lost item fee"
          • Fee/fine owner = Use Barcode to locate Item Record; Use Holdings Location: Permanent location from Item Record to find Primary service point within Settings>Tenant>Service Points; Use Service Point in Settings>Users>Fee/Fine: Owners to find associated Fee/fine owner
          • Billed date = System date and time
          • Billed amount = Charge amount for item
          • Remaining amount = Charge amount for item
          • Payment status = "Outstanding"
          • Loan details = link to loan record
          • Overdue policy = Overdue fine policy link from Loan record
          • Lost item policy = Lost item fee policy link from Loan record
          • Action date = System date and time
          • Action = "Lost item fee"
          • Amount = Charge amount for item
          • Balance = Charge amount for item
          • Transaction information = blank
          • Created at = "-"
          • Source should be "System"
          • Additional information = blank
        • Assign lost item processing fee (if applicable):
          • Fee/fine type = "Lost item processing fee"
          • Fee/fine owner = Use Barcode to locate Item Record; Use Holdings Location: Permanent location from Item Record to find Primary service point within Settings>Tenant>Service Points; Use Service Point in Settings>Users>Fee/Fine: Owners to find associated Fee/fine owner
          • Billed date = System date and time
          • Billed amount = Lost item processing fee
          • Remaining amount = Lost item processing fee
          • Payment status = "Outstanding"
          • Loan details = link to loan record
          • Overdue policy = Overdue fine policy link from Loan record
          • Lost item policy = Lost item fee policy link from Loan record
          • Action date = System date and time
          • Action = "Lost item processing fee"
          • Amount = Lost item processing fee
          • Balance = Lost item processing fee
          • Transaction information = blank
          • Created at = "-"
          • Source = "System"
          • Additional information = blank

      Acceptance criteria:

      • The job is implemented;
      • Unit tests are created;
      • Make sure all DB indexes in place;

      Notes:

      • Dev only story;

        TestRail: Results

          Attachments

          1. Aged2Lost-Test-Cases.xlsx
            25 kB
          2. CIRC-852_Retest.xlsx
            13 kB
          3. screenshot-1.png
            screenshot-1.png
            40 kB
          4. screenshot-3.png
            screenshot-3.png
            149 kB
          5. screenshot-4.png
            screenshot-4.png
            134 kB
          6. screenshot-5.png
            screenshot-5.png
            146 kB
          7. screenshot-6.png
            screenshot-6.png
            123 kB

            Issue Links

              Activity

                People

                Assignee:
                bohdan-suprun Bohdan Suprun
                Reporter:
                bohdan-suprun Bohdan Suprun
                Tester Assignee:
                Holly Mistlebauer Holly Mistlebauer
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases