Uploaded image for project: 'mod-feesfines'
  1. mod-feesfines
  2. MODFEE-56

[SPIKE] Fees/fines refactoring estimation

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Closed (View Workflow)
    • Priority: TBD
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Template:
    • Sprint:
      EPAM-Veg Sprint 41, EPAM-Veg Sprint 42, EPAM-Veg Sprint 91, EPAM-Veg Sprint 92
    • Story Points:
      3
    • Development Team:
      Vega

      Description

      Summary of the known issues:

      Calculations on FE

      Initially fee/fine actions were implemented in such a way that all calculations are happening on FE while BE acts as a simple CRUD service for storing results of these calculations. Not only this approach is an anti-pattern, it is also not safe and, considering we're talking about financial data, poses a significant risk. Anyone who can use Postman or Fiddler can write anything he or she wants to the DB (provided they have access to the platform).

      Bugs

      While working on UIU-1139 Maxim Didenko has found a bug UIU-1626 on the fee/fine details page that allows, among other things, to overpay a fine by any amount. It is a bug in the UI architecture that leads to account data not being updated on the screen after PUT request to the server. Account state will remain the same as it was when the user has loaded the page. No matter what actions you'll do, the system will allow you. But when you reload the page you'll see that the client was charged hundreds of dollars instead of ten.

      Double vs. BigDecimal

      In February we created a technical debt ticket https://issues.folio.org/browse/MODFEE-29. Java type "double" is being used for monetary values, which is dangerous because it might potentially lead to wrong calculation results. This issue can be fixed independently, but if we're going to start major refactoring of Fees/fines it should also be part of it.

        TestRail: Results

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                oleksandrkurash Alexander Kurash
                Reporter:
                oleksandrkurash Alexander Kurash
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases