Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Concepts

Each PolicyHolder (employer) will be registered in openIMIS.
Each PolicyHolder will have access to some schemes
The PolicyHolder would have the possibility to add insuree with a contract period, default pricing parameters (e.g., income) and the contribution plan bundle to use.

Business Processes

The process bellow will all respect the location scope of the users, meaning that to add a policyholder for a region the scheme clerk must have access to that very region.
The enrollment process that will be supported will be coming from Nepal requirements, even if we tried to broader, it might not support all the enrollment process of all group insurances

Use cases

PolicyHolder (employer)

The first step before enrolling insure under a PolicyHolder, one needs to make sure that the PolicyHolder is defined in the tool; Read right is required to have access to the search/list screen, Managing PolicyHolder will be the role of the SchemeClerk.

Web applications.

  • UC7-1: Search: PolicyHolder List > use the search box > search, the default list will show only the active policy holder
  • UC7-2: Add: PolicyHolder List > "add" PolicyHolder > fill the details on the Policy holder page > save
  • UC7-3: Update: PolicyHolder List > "Select" PolicyHolder > update the details on the Policy holder page > save
  • UC7-4: Delete: PolicyHolder List > "Select" PolicyHolder > Delete (this role should be only available to admin, others should only archive by setting the DateValidTo)
  • UC7-5: search users: PolicyHolder List > "Select" PolicyHolder > UserList > > search, the default list will show only the active policy holder users
  • UC7-6: add users: PolicyHolder List > "Select" PolicyHolder > UserList > add user
  • UC7-7: update users: "Select" PolicyHolder > UserList > (Search user) >Select User > change details > Save
  • UC7-8: block user: "Select" PolicyHolder > UserList > (Search user) >Select User > change details > Block


PolicyHolder insuree

Managing PolicyHolder's insure will be possible from the PolicyHolder page. This should be possible for the PolicyHolderClerk and the SchemeClerk.

Web application

  • UC1-1: Search: PolicyHolder List > "Select" PolicyHolder > Insuree tab > use the search box > search, the default list will show only the active policy holder insuree
  • UC1-2: Add: PolicyHolder List > "Select" PolicyHolder > Insuree tab > 'add' insure > fill the details on the PolicyHolder insuree page > save
  • UC1-3: Update (error): PolicyHolder List > "Select" PolicyHolder > Insuree tab > update the details on the PolicyHolder page > save
  • UC1-4: Replace: (new version) PolicyHolder List > "Select" PolicyHolder > Insuree tab > update the details on the Policy holder page > create new version > add ValidityTo
  • UC1-5: Delete: PolicyHolder List > "Select" PolicyHolder > Insuree tab > "Select" an insuree> Delete (this role should be only available to admin, other should only archive by setting the DateValidTo)


PolicyHolder contribution plan bundle

Managing Policy holder contribution plan bundle, this should be possible for the SchemeClerk or SchemeAdmin.

Web application

  • UC11-1: Search: PolicyHolder List > "Select" PolicyHolder > contribution plan tab > use the search box > search, the default list will show only the active contribution plan
  • UC11-2: Add: PolicyHolder List > "Select" PolicyHolder > contribution plan tab > 'add' contribution plan bundles > fill the details on the Policy holder insuree page > save
  • UC11-3: Replace (new version):"Select" PolicyHolder > contribution plan tab > "Select" a contribution plan bundles > update the contribution plan > create a new version > add ValidityTo
  • UC11-4: Delete: PolicyHolder List > "Select" PolicyHolder > contribution plan tab > "Select" a contribution plan bundles > Delete

backend

  • UC11-5: Replacing / removing propagation to policyholder insure contribution plan bundle


Authorities

To manage the group insurance several authorities will be added, the existing authorities have a "*" :

  • PolicyHolder
    • C/R/U/D (4 authorities)
  • PolicyHolderInsuree
    • C/R/U/D (4 authorities)
  • Approve (TBC)
  • PolicyHolderUser
    • C/R/U/D (4 authorities)

Entities

PolicyHolder

  • UUID (char(24) )
  • Code (varchar)
  • Version ( integer - to be used for optimistic locking)
  • TradeName (varchar)
  • LocationsUUID (fk tblLocations)
    • Not limited to one level
  • Address (varchar)
  • Phone (varchar)
  • Fax (varchar)
  • Email (varchar)
  • ContactName (varchar)
  • LegalFormUUID (configEnum:legalForm )
  • ActivityCodeUUID (configEnum:activity)
  • AccountancyAccount (varchar)
  • PaymentReference (varchar)
  • DateValidFrom (date)
  • DateValidTo (date)
  • Active (bool)
  • Json_ext (json)
  • DateCreated (date)
  • DateUpdated (date)
  • UserUpdatedUUID (fk users)
  • UserCreatedUUID (fk users)

PolicyHolderInsuree

  • UUID (char(24) )
  • Version ( integer - to be used for optimistic locking)
  • PolicyHolderUUID (fk policyHolder)
  • InsureeUUID (fk Insuree)
  • ContributionPlanBundleUUID (fk_contributionPlanBundle)
  • LastPolicyUUID (fk Policy)
  • Json_ext (json)
  • DateCreated (date)
  • DateUpdated (date)
  • UserUpdatedUUID (fk users)
  • UserCreatedUUID (fk users)

PolicyHolderContributionPlanBundle

  • UUID (char(24) )
  • Version (integer - to be used for optimistic locking)
  • ContributionPlanBundleUUID (fk_contributionPlanBundle)
  • PolicyHolderUUID (fk policyHolder)
  • Json_ext (json)
  • DateCreated (date)
  • DateUpdated (date)
  • UserUpdatedUUID (fk users)
  • UserCreatedUUID (fk users)
  • Active (bool)
  • DateValidFrom (date)
  • DateValidTo (date)


PolicyHolderUser

  • UUID (char(24) )
  • UserUUID (fk_user)
  • PolicyHolderUUID (fk policyHolder)
  • Json_ext (json)
  • DateCreated (date)
  • DateUpdated (date)
  • UserUpdatedUUID (fk users)
  • UserCreatedUUID  (fk users)
  • Active (bool)
  • DateValidFrom (date)
  • DateValidTo (date)

Details design

Back end module


Because openIMIS can already have an adapter to read the openIMIS roles and authority, no business function will be required outside the database updates and profile replacements.

Mutations

Mutation as part of the schema file:


Permissions


Models

See models section above

Services

replacePolicyolder

replacePolicyHolderInsuree

replacePoicyHolderContributionPlanBundle



Front end

The list of PolicyHolder should use the same layout as other existing list in openIMIS (claims, insuree ...)

The PolicyHolder card will have:

  • quick summary that can be edited (as the opened tab called general information)
  • a tab for the user
  • a tab for the insuree
  • a possibility to add tab with contribution (will be the case for the contract and payment)

When a tab is opened, only the id and the name of the policy holder will be displayed in a top ribbon (as bread crumbs).

Then the tab content will be mainly quick edit pages, this pages will be composed by:

  • filter mechanisms
  • a list with editable fields
  • save button when modification are done.
  • each line modified should change in layout (background changes, font ..)
  • the columns (editable) could come from the calculation module in a form of a integer fields or a drop down.




  • No labels