...
- UC8-6: Replacing / removing propagation to contribution plan bundle
Details design
Back end module
Entities
ContributionPlanBundle(HistoryBusinessModel)
- Code (varchar)*
- Name (varchar)
ContributionPlanBundleDetails - under ContributionPlanBundle (HistoryModel)
- ContributionPlanBundleUUID: (fk ContributionPlanBundle)*
- ContributionPlanUUID: (fk_contributionPlan)*
ContributionPlan(HistoryBusinessModel)
- Code (varchar 32)
- name(varchar 256)
- CalculationUUID
- BenefitPlanUUID (fk_product )
- Periodicity (int)
- Number of month between 2 payment
Amendment (0 for the contract)
Grace Period,Rate,Threshold will be stored on the json_ext part of HistoryModel
Mutations
Authorities
To manage the group insurance several authorities will be added, the existing authorities have a "*" :
- ContributionPlanBundle
- C/R/U/D(4 authorities)
- ContributionPlan
- C/R/U/D(4 authorities)
Entities
ContributionPlanBundle
- UUID (char(24) )
- Version ( integer - to be used for optimistic locking)
- Active (bool)
- Code (varchar)
- Name (varchar)
- Json_ext (json)
- DateCreated(date)
- DateUpdate(date)
- UserUpdateUUID(fk users)
- UserCreateUUID (fk users)
- DateValidFrom (date)
- DateValidTo (date)
sub entity ContributionPlanBundleDetails
- UUID (char(24) )
- Version ( integer - to be used for optimistic locking)
- ContributionPlanBundleUUID: (fk ContributionPlanBundle)
- ContributionPlanUUID: (fk_contributionPlan)
- Json_ext (json)
- DateCreated(date)
- DateUpdate(date)
- UserUpdateUUID(fk users)
- UserCreateUUID (fk users)
- DateValidFrom (date)
- DateValidTo (date)
- Active (bool)
ContributionPlan
- UUID (char(24) )
- Version ( integer - to be used for optimistic locking)
- Code (varchar)
- Active (bool)
- CalculationUUID
- BenefitPlanUUID (fk_product )
- Periodicity (int)
- Number of month between 2 payment
- Json_ext (json)
- GracePeriod
- Rate
- Threshold
- …
- DateCreated(date)
- Amendment (0 for the contract)
- DateUpdate(date)
- UserUpdateUUID(fk users)
- UserCreateUUID (fk users)
- DateValidFrom (date)
- DateValidTo (date)
Details design
Back end module
Mutations
Permissions
Services
Front end
ContributionPlan search page
ContributionPlan card
ContributionPlanBundle search page
...
Services
- C/U/D service ContributionPlanBundle
- check autority
- ensure Code uniqueness for ValidTo/ValidFrom
- Ensure mandatory fields are present
- code not editable once created
- Ensure that the periodicity for the contribution plan are the same
- Replace ContributionPlanBundle
- Keep the code
- normal HistoryBusinessModel replace
- C/U/D service ContributionPlan
- check authority
- ensure Code uniqueness for ValidTo/ValidFrom
- Ensure mandatory fields are present
- code not editable once created
- Replace ContributionPlan
- Keep the code
- normal HistoryBusinessModel replace
Front end
The list of Contract should use the same layout as other existing list in openIMIS (claims, insuree ...).
Menu
Contract menu item should be located under the main menu "Insuree and policy".
ContributionPlan search page
search criteria
- Code
- name
- Date where the ContributionPlan are/were valid (Date entered > DateValidFrom and (Date entered<= DateValidTo or DateValidTo is NULL))
- periodicity (all )
search result column
- code
- name
- calculation (contribution_fe)
- insurance Product (contribution_fe)
- periodicity
- DateValidTo
- DateValidFrom
Delete (Trash) and Edit (Pen) buttons at the end of the line (see Location module)
MaterialUI :plus: to add a ContributionPlan
Double click or click on Edit button to update a PolicyHolder.
ContributionPlan card
- code (mandatory, not editable once created)
- name (mandatory)
- calculation (contribution_fe) (mandatory)
- insurance Product (contribution_fe) (mandatory)
- periodicity (mandatory)
- DateValidTo (mandatory)
- DateValidFrom
The material (Save) UI button will save the changes
ContributionPlanBundle search page
search criteria
- Code
- name
- Date where the ContributionPlan are/were valid (Date entered > DateValidFrom and (Date entered<= DateValidTo or DateValidTo is NULL))
- calculation (contribution_fe) (info in the Contribution plan part of the bundle)
- insurance Product (contribution_fe) (info in the Contribution plan part of the bundle)
- periodicity (info in the Contribution plan part of the bundle)
search result column
- code
- name
- DateValidTo
- DateValidFrom
Delete (Trash) and Edit (Pen) buttons at the end of the line (see Location module)
MaterialUI :plus: to add a ContributionPlan
Double click or click on Edit button to update a PolicyHolder.
ContributionPlanBundle card
- code (mandatory, not editable once created)
- name (mandatory)
- DateValidTo (mandatory)
- DateValidFrom
- LIST of the contribution plan
- Column
- name
- code
- product
- periodicity
- DateValidTo
- DateValidFrom
- replace and delete button
An empty line at the top of the list with the :plus: add button in place of delete, once filled, new empty line should be displayed.
- Column
The material (Save) UI button will save the changes