Skip to main content
Version: 17

Status transition

Business goal​

A Status Transition Definition defines how the dossier can go from one status to another.
For each transition, validations can be defined to verify if the transition is possible.

🎯 Functional documentation​

The Status Transition Definition is linked to one or more Dossier Definitions.

  • By pointing to a DossierStatusTransitionConfiguration via an identifier
    • These are configured as JSON using the configuration framework

βš™οΈ Configuration​

At the time of writing there is no way to manage the transitions in the UI.
Therefore we’ll explain the JSON model.

General fields related to the import/export:

  • type: This should refer to DOSSIER_STATUS_TRANSITIONS
  • version: Technical version of the configuration format. This is not a functional version. Create a second status transition file with for example the suffix _v2 in the identifier.
  • value: The content of the status transition file.
  • identifier: fspname_dossier_status_transitions

The configuration itself:

  • statusMap: The grouping of all the states. Every entry has a β€œfrom” dossier status as key, and all possible to dossier statuses as value. The order of the statuses is followed in the UI. So the first configured status is displayed on the top right side of the UI and will have a primary color.
    • to: The state after the transition.
    • forRoles: This limits a state transition to a certain role.
    • validations: Which conditions should be met.
      • className: the class that should be met as a validation
        See validations
      • settings: optional settings to configure the validation class.

Example:

{
"type": "DOSSIER_STATUS_TRANSITIONS",
"version": 1,
"value": {
"identifier": "customer_dossier_status_transitions",
"statusMap": {
"OPEN": [
{
"to": "IN_PROGRESS",
"forRoles": [ "PARTNER_ADVISOR", "PARTNER_MANAGER" ],
"validations": [
{
"className": "eu.myharmoney.app.bll.validators.dossierstatustransition.AtLeastOneResponsible",
"settings": {}
}
]
}
]
}
}
}

Json structure​

Settings Configuration