Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

...

Business Processes

The process bellow will 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 is defined by Nepal requirements. Althrough we try to make it broader, it might not support all the enrollment processes of all group insurances.

...

Use cases

PolicyHolder (employer)

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

Web application

  • UC7-1: Search: PolicyHolder List > use the search box > search, the default list will show only the active PolicyHolders

  • UC7-2: Add: PolicyHolder List > "Add" PolicyHolder > fill the details on the PolicyHolder 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)

PolicyHolder User

Web application

  • UC7-5: Search users: PolicyHolder List > "Select" PolicyHolder > User List > search, the default list will show only the active PolicyHolder's users

  • UC7-6: Add users: PolicyHolder List > "Select" PolicyHolder > User List > add user > add details (validity dates) > Save

  • UC7-7: Update users: "Select" PolicyHolder > UserList > (Search user) >Select User > change details (validity dates) > Save

  • UC7-8: Delete user: "Select" PolicyHolder > UserList > (Search user) >Select User > change details > Delete

PolicyHolder insuree

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

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 Clerk 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

    PolicyHolder insuree contribution plan bundle

Authorities

To manage the group insurance several The following authorities will be added , the for group insurance management (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)

...

Entity definition

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)

  • LegalForm (configEnum:legalForm)

  • ActivityCode (configEnum:activity)

  • AccountancyAccount (varchar)

  • PaymentReference (varchar)

  • DateValidFrom (date)

  • DateValidTo (date)

  • isActive (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)

  • isActive

  • DateValidFrom (date)

  • DateValidTo (date)

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)

  • isActive (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)

  • isActive (bool)

  • DateValidFrom (date)

  • DateValidTo (date)

Details design

Back end Backend 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.

...

See models section above

Services

  • CRUD services

  • replacePolicyolder

    replacePolicyHolder

  • replacePolicyHolderInsuree

  • replacePoicyHolderContributionPlanBundle

...

Frontend

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

Menu

...

Policyholder menu itme item should be located under the main menu "Insuree and policy".

PolicyHolder search pages

List of the search criteriascriteria:

  • code

    Code (string)

  • Tradename (string) 

  • Location (4 Select, one per level)

  • LegalForm (configEnum:legalForm ) (Select)

  • ActivityCode (configEnum:activity) (Select)

  • DateValidFrom (date) - Date picker

  • DateValidTo (date) - Date picker

List of the columns in the search result:

...

  • Display name (

...

  • Code - Tradename )

  • Location

  • LegalForm (configEnum:legalForm )

  • ActivityCode (configEnum:activity)

  • DateValidFrom (date)

  • DateValidTo (date)

  • Delete button at the end of the line (see Location module)

MaterialUI + (plus) to add a policy holder.

Double click to update a PolicyHolder.

The PolicyHolder card

General Information

Once a policyholder open PolicyHolder view/update page opens from the search list, the "General information" section or tab is displayed with those fields (editable for the one with enough rights)

...

:

  • Code (varchar) (Mandatory)

  • TradeName (varchar) (Mandatory)

  • LocationsUUID (fk tblLocations) (Mandatory)

    • Search for location with Level - Code - Name (all strings)

  • Address (varchar/json):

    mutliline

    multiline Box String OR (Address line 1, line2 , post code, city)

  • Phone (varchar): string + configurable Regex for validation/constraint

  • Fax (varchar): + configurable Regex for validation/constraint

  • Email (varchar): + std email field validation

  • ContactName (varchar/json)

  • LegalForm (configEnum:legalForm )

  • ActivityCode (configEnum:activity)

  • AccountancyAccount (varchar) + configurable Regex for validation/constraint

  • ?bankAccount (json)

     

  • PaymentReference (varchar) + configurable Regex for validation/constraint

  • DateValidFrom (date) (Mandatory)

  • DateValidTo (date)

PolicyHolder Users

This pages/section/tab will link

...

interactive (openIMIS) user to

...

PolicyHolder, in order to allow them

...

to access the PolicyHolder’s data on the

...

PolicyHolder portal (show only user with one of portal authorities - PolicyHolderClerk).

This page or section could be in different form:

  • a tab in the

...

  • PolicyHolder page

  • a dedicated page, access from the

...

  • PolicyHolder page via a link that

...

  • prefills PolicyHolder search criteria

  • a new "menu" that have the name of the

...

  • PolicyHolder

PolicyHolder Users search

...

criteria

  • option to show inactive user

  • other search should be location on the column header (TBC)

  • user search (contribution_fe ?)

PolicyHolder Users result column

  • (User name /

...

  • firstname /

...

  • lastname) Contribution of fe user module, Dropdown for new and value (or readonly dropdown preselected) for existing

  • DateValidFrom (date) (input field)

  • DateValidTo (date) (input field)

  • Delete (will put it inactive, change the DateValidTo) (+ add button in place of delete)

an 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.

The material (Save) UI buttom button will save all the changes made on the list.

PolicyHolder Insurees

This pages/section will link the

...

PolicyHolder and a given insuree, and will enable the addition of data on that relationship (contribution plan bundle and calculation rules parameters).

This page or section could be in different form:

  • a tab in the Policyholder card

  • a dedicated page, access from the

    policyholder

    PolicyHolder card via a link that

    prefill  policyholder

    prefill PolicyHolder search criteria

  • a new "menu" that have the name of the

    policy holder

    PolicyHolder

PolicyHolder insuree search

...

criteria

  • option to show inactive user

  • other search should be location on the column header (TBC)

  • insuree search (contribution_fe ?)

  • contribution plan bundle search (contribution_fe ?)

PolicyHolder insuree result column

  • (Insuree data) contribution_fe insure module, Dropdown for new and value for existing

  • (contribution plan bundle data) contribution_fe "contribution plan bundle" module, Dropdown of

    PHCPB for

    PHCPB for new and value for existing

  • (calculation data) contribution_fe "calculation/rules" module, (inputs fields)

  • DateValidFrom (date) (input field)

  • DateValidTo (date) (input field)

  • Delete (will put it inactive, change the DateValidTo)

an 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.

The material (Save) UI buttom button will save all the changes made on the list.

PolicyHolder Contribution plan bundle

  • a tab for the PHCPB or a

...

  • link simple pre-filtered for the PHCPB  search

    • option to show inactive PHCPB

    • link CPB to PolicyHolder to

...

    • allow access on that

...

    • PolicyHolder data to that user (show only user with one of portal authorities)

      • (CPB data) contribution_fe CPB module, Dropdown for new and value for existing

      • (calculation data) contribution_fe "calculation/rules" module, (inputs fields)

      • Delete button

an 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.

The material (Save) UI buttom will save all the changes made on the list.

Link to entity of existing modules

  • a possibility to add

...

  • tab with (will be the case for the contract and payment):

    •  a simple pre-filtered for the contribution search → select/double click will lead to contribution pages (made by

...

    • Bluesquare) TBD

    •  a simple pre-filtered for the policy search → select/double click will lead to contribution pages (made by

...

    • Bluesquare) TBD

Link to other entities

  • place holder for other tab / link to search pages → those should be added by contribution_fe

Front end Frontend Configuration

  • Get Backend Configuration for the dropdown/enums or duplicate it

  • configurable Regex for validation/constraint for the phone and FAX (Nice to have)

  • configurable Regex for validation/constraint for AccountancyAccount (Nice to have)

  • configurable Regex for validation/constraint PaymentReference (Nice to have)

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

...