...
Note |
---|
This module was created by the https://openimis.atlassian.net/wiki/spaces/OP/pages/2161147938/Project+D1+Formal+Sector+Support?pageId=2161147938 the concept and business logic where develop for that scope but the rules are used in other context such as the Project: 2021.T3 Payment Layer |
version
version | date | comment | changes |
---|---|---|---|
1 | 06-2021 | ||
2 | 08-2021 | remove acceptance criteria form FS cleaning FS specifics move calculation rules in a specific table add filter based on type and sub-type |
Concepts
The rules for the the calculation of the policy value or payment to HF can be complex and evolving. Therefore, the solution should bring flexibility, to avoid complete redesign and databases change when a parameter to define the contribution value is changed.
To bring that flexibility, the solution described here uses a Calculation Rule (the Calculation Rules are defined in additional openIMIS modules extending the Calculation Module). This module is defining a framework to design calculations and to manage their activation and versioning in openIMIS. This
...
calculate
get_linked_class
convert
Methods defined in abstract class
...
2 if activeForObject(instance)
calculate(instance)
run_convert(instance, from, to, **argv)
execute the conversion for the instance with the first rule that provide the conversion (see get_convert_from_to)
get_convert_from_to()
get the possible conversion, return [calc UUID, from, to]
Module function/Service
NEED TO BE DEFINED ON MODULE LEVEL
...