Versions Compared

Key

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

Overview

...

Overview

Every Service integrated with egov-workflow-v2 service needs to first define the workflow configuration which describes the states in the workflow, the action that can be taken on this states, who all can perform those action, SLA etc. This configuration is created using API’s and is stored in DB. The configuration can be created either state level or tenant level based on the requirements.

Pre-requisites

Before you proceed with the configuration, make sure the following pre-requisites are met -

  • Add any system or skills requirements here (Use bullets to build the list)

  •  

Key Functionalities

Add 2-3 lines to highlight the use and applications in context.

  • Add functional aspects for the topic (Use bullets to build the list)

  • Tables can be inserted for certain topics.

...

Title 

...

Description

...

 

...

 

...

 

...

 

Deployment Details

  1. Deployment Steps (Use numbered bullet lists to define the sequence)

Configuration Details

  1. Configuration steps (Use numbered bullet lists to define the sequence)

Integration

 

Integration Scope

 

Integration Benefits

 

Steps to Integration

...

  • egov-workflow-v2 service is up and running

  •  Role Action mapping is added for the BusinessService API’s

Key Functionalities

  • Create and modify workflow configuration

  • Configure State level as well BusinessService level SLA

  • Control access to workflow actions from configuration

  • Validates if the flow defined in configuration is complete during creation

Deployment Details

  1. Deploy latest version of egov-workflow-v2 service

  2. Add Role-Action mapping for BusinessService API’s (preferably add create and update only for SUPERUSER. search can be added for CITIZEN and required employee roles like TL_CEMP etc. )

  3. Overwrite the egov.wf.statelevel flag ( true for state level and false for tenant level)

Configuration Details

  1. Create the businessService JSON based on product requirement. Following is an sample json of a simple 2 step workflow where an application can be applied by citizen or counter employee and then can be either rejected or approved by the approver.

    Code Block
    {
          "tenantId": "pb",
          "businessService": "PGR",
          "business": "pgr-services",
          "businessServiceSla": 432000000,
          "states": [
            {
              "sla": null,
              "state": null,
              "applicationStatus": null,
              "docUploadRequired": false,
              "isStartState": true,
              "isTerminateState": false,
              "isStateUpdatable": true,
              "actions": [
                {
                  "action": "APPLY",
                  "nextState": "PENDINGFORASSIGNMENT",
                  "roles": [
                    "CITIZEN",
                    "COUNTER_EMPLOYEE"
                  ]
                }
              ]
            },
            {
              "sla": null,
              "state": "APPLIED",
              "applicationStatus": "APPLIED",
              "docUploadRequired": false,
              "isStartState": false,
              "isTerminateState": false,
              "isStateUpdatable": false,
              "actions": [
                {
                  "action": "APPROVE",
                  "nextState": "APPROVED",
                  "roles": [
                    "APPROVER"
                  ]
                },
                {
                  "action": "REJECT",
                  "nextState": "REJECTED",
                  "roles": [
                    "APPROVER"
                  ]
                }
              ]
            },
            {
              "sla": null,
              "state": "REJECTED",
              "applicationStatus": "REJECTED",
              "isStateUpdatable": false,
              "docUploadRequired": false,
              "isStartState": false,
              "isTerminateState": true
            },
            {
              "sla": null,
              "state": "APPROVED",
              "applicationStatus": "APPROVED",
              "isStateUpdatable": false,
              "docUploadRequired": false,
              "isStartState": false,
              "isTerminateState": true
            }
          ]
        }
  2. Once the businessService json is created add it in request body of _create API of workflow and call the API to create the workflow.

  3. To update the workflow first search the workflow object using _search API and then make changes in the businessService object and then call _update using the modified search result. (States cannot be removed using _update API as it will leave applications in that state in an invalid state. In such cases first all the applications in that state should be moved forward or backward state and then state should be disabled through DB directly)

Integration 

Integration Scope

The workflow configuration can be used by any module which performs a sequence of operations on an application/Entity. It can be used to simulate and track processes in organisations to make it more efficient to and increase the accountability.

Integration Benefits

Integrating with workflow service provides a way to have an dynamic workflow configuration which can be easily modified according to the changing requirements. The modules don’t have to deal with any validations regarding workflow such as authorisation of the user to take an action, if documents are required to be uploaded at certain stage etc. as they will be automatically handled by egov-workflow-v2 service based on the configuration defined. It also automatically keeps updating SLA for all applications which provides a way to track the time taken by an application to get processed.  

Steps to Integration

  1. To integrate host of egov-workflow-v2 should be added in helm charts

  2. /egov-workflow-v2/egov-wf/businessservice/_search should be added as the endpoint for searching workflow configuration . (Other endpoints are not required once workflow configuration is created)

Reference Docs

Title 

Link

 

 

 

  Configuring Workflows For New Product/Entity

Configuring Workflows For New Product/Entity  

 Service Documentation (LINK NEEDS TO BE UPDATED)

 Business Services

API List

(Note: All the API’s are in the same postman collection therefore same link is added in each row)