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

Version 1 Current »

Description:

The Water & Sewerage module deals with the process of applying and managing water & sewerage connections. This module has both Citizen and employee facing components. As part of Phase 2, the citizen has the ability to Initiate connections, Submit application, resubmit application and many more actions (Based on workflow), make payment for application, print receipts, download bills etc. The Employee and Other roles like ws doc verifier,  field inspector can take action based on workflow action.

Notes:

  • This service integrates with Property Registry 

  • In case Property ID is not provided as part of the create water/sewerage connection application will not be generated.

  • Counter Employees , Document Verifier, Field Inspector, Approver and Clerk performing actions on user application must have suitable state-level roles

Actors: Citizen, Counter Employee, Document Verifier, Field Inspector, Approver, Clerk

Technical Documents:

Please find the updated technical document for the Water & Sewerage module at the below link:

Water Service Technical Document - Water Service - Technical Document

Sewerage Service Technical Document - Sewerage Service - Technical Document

Promotion Steps:

Backend

https://github.com/egovernments/egov-mdms-data/blob/master/data/pb/BillingService/TaxHeadMaster.json


Add the following objects to the masterconfig.json (Add in ws-services-masters,ws-services-calculation and sw-services-calculation)

ws-services-masters:

"ws-services-masters": {
    "connectionCategory": {
      "masterName": "connectionCategory",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.code"
      ]
    },
    "connectionType": {
      "masterName": "connectionType",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.code"
      ]
    },
    "waterSource": {
      "masterName": "waterSource",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.code"
      ]
    },
    "billingPeriod": {
      "masterName": "billingPeriod",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.billingCycle"
      ]
    }
  }

ws-services-calculation:

"ws-services-calculation": {
    "WaterCess": {
      "masterName": "WaterCess",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "Interest": {
      "masterName": "Interest",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.fromFY"
      ]
    },
    "Rebate": {
      "masterName": "Rebate",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.fromFY"
      ]
    },
    "Penalty": {
      "masterName": "Penalty",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.fromFY"
      ]
    },
    "WCBillingSlab": {
      "masterName": "WCBillingSlab",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "WS_CHARGE": {
      "masterName": "WS_CHARGE",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "WS_TIME_PENALTY": {
      "masterName": "WS_TIME_PENALTY",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "WS_WATER_CESS": {
      "masterName": "WS_WATER_CESS",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "MeterStatus": {
      "masterName": "MeterStatus",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "WS_Round_Off": {
      "masterName": "WS_Round_Off",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "PlotSizeSlab": {
      "masterName": "PlotSizeSlab",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "PropertyUsageType": {
      "masterName": "PropertyUsageType",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "FeeSlab": {
      "masterName": "FeeSlab",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "RoadType": {
      "masterName": "RoadType",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "CalculationAttribute": {
      "masterName": "CalculationAttribute",
      "isStateLevel": true,
      "uniqueKeys": []
    }
  }

sw-services-calculation:

"sw-services-calculation": {
    "Interest": {
      "masterName": "Interest",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.fromFY"
      ]
    },
    "Rebate": {
      "masterName": "Rebate",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.fromFY"
      ]
    },
    "Penalty": {
      "masterName": "Penalty",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.fromFY"
      ]
    },
    "SCBillingSlab": {
      "masterName": "SCBillingSlab",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "billingPeriod": {
      "masterName": "billingPeriod",
      "isStateLevel": true,
      "uniqueKeys": [
        "$.billingCycle"
      ]
    },
    "SW_CHARGE": {
      "masterName": "SW_CHARGE",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "SW_TIME_PENALTY": {
      "masterName": "SW_TIME_PENALTY",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "SW_Round_Off": {
      "masterName": "SW_Round_Off",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "PlotSizeSlab": {
      "masterName": "PlotSizeSlab",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "PropertyUsageType": {
      "masterName": "PropertyUsageType",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "FeeSlab": {
      "masterName": "FeeSlab",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "RoadType": {
      "masterName": "RoadType",
      "isStateLevel": true,
      "uniqueKeys": []
    },
    "CalculationAttribute": {
      "masterName": "CalculationAttribute",
      "isStateLevel": true,
      "uniqueKeys": []
    }
  }

Role Configuration:

Web Page & API Access:

In the above file, define the access for the following APIs, Card Type URLs and Menu Type URLs.

{
      "id": 1910,
      "name": "Create Water Connection",
      "url": "/ws-services/wc/_create",
      "displayName": "Create Water COnnection",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-services",
      "code": "null",
      "path": ""
    },
    {
      "id": 1911,
      "name": "Search Water Connection",
      "url": "/ws-services/wc/_search",
      "displayName": "Search Water COnnection",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-services",
      "code": "null",
      "path": ""
    },
    {
      "id": 1912,
      "name": "Update Water Connection",
      "url": "/ws-services/wc/_update",
      "displayName": "Update Water COnnection",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-services",
      "code": "null",
      "path": ""
    },
    {
      "id": 1913,
      "name": "Enter Meter Reading",
      "url": "/ws-calculator/meterConnection/_create",
      "displayName": "Enter Meter Reading",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1914,
      "name": "Search Meter Reading",
      "url": "/ws-calculator/meterConnection/_search",
      "displayName": "Search Meter Reading",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1915,
      "name": "Calculate Water Bill",
      "url": "/ws-calculator/waterCalculator/_calculate",
      "displayName": "Calculate Water Bill",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1916,
      "name": "Create Sewerage Connection",
      "url": "/sw-services/swc/_create",
      "displayName": "Create Sewerage Connection",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "sw-services",
      "code": "null",
      "path": ""
    },
    {
      "id": 1917,
      "name": "Update Sewerage Connection",
      "url": "/sw-services/swc/_update",
      "displayName": "Update Sewerage Connection",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "sw-services",
      "code": "null",
      "path": ""
    },
    {
      "id": 1918,
      "name": "Search Sewerage Connection",
      "url": "/sw-services/swc/_search",
      "displayName": "Search Sewerage Connection",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "sw-services",
      "code": "null",
      "path": ""
    },
    {
      "id": 1919,
      "name": "Sewerage Calculation",
      "url": "/sw-calculator/sewerageCalculator/_calculate",
      "displayName": "Sewerage Calculation",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "sw-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1920,
      "name": "Search Water Bill",
      "url": "/egov-searcher/bill-genie/waterbills/_get",
      "displayName": "Search Water Bill",
      "orderNumber": 1,
      "enabled": false,
      "serviceCode": "Searcher",
      "code": "null",
      "path": ""
    },
    {
      "id": 1921,
      "name": "Search Sewerage Bill",
      "url": "/egov-searcher/bill-genie/seweragebills/_get",
      "displayName": "Search Sewerage Bill",
      "orderNumber": 2,
      "enabled": false,
      "serviceCode": "Searcher",
      "code": "null",
      "path": ""
    },
    {
      "id": 1922,
      "name": "Calculate Fee For Water Application",
      "url": "/ws-calculator/waterCalculator/_estimate",
      "displayName": "Fee Calculation For Water Application",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1923,
      "name": "Calculate Fee For Sewerage Application",
      "url": "/sw-calculator/sewerageCalculator/_estimate",
      "displayName": "Fee Calculation For Sewerage Application",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "sw-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1924,
      "name": "Add adhoc tax",
      "url": "/ws-calculator/waterCalculator/_applyAdhocTax",
      "displayName": "Add adhoc tax",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "ws-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1925,
      "name": "Add adhoc tax to sewerage",
      "url": "/sw-calculator/sewerageCalculator/_applyAdhocTax",
      "displayName": "Add adhoc tax",
      "orderNumber": 0,
      "enabled": false,
      "serviceCode": "sw-calculator",
      "code": "null",
      "path": ""
    },
    {
      "id": 1926,
      "name": "rainmaker-common-wns",
      "url": "card",
      "displayName": "Water & Sewerage",
      "orderNumber": 2,
      "parentModule": "",
      "enabled": true,
      "serviceCode": "wns",
      "code": "",
      "path": "",
      "navigationURL": "wns/search",
      "leftIcon": "custom:water-tap",
      "rightIcon": "",
      "queryParams": ""
    },
    {
      "id": 1927,
      "name": "rainmaker-citizen-wns",
      "url": "card",
      "displayName": "Water & Sewerage",
      "orderNumber": 2,
      "parentModule": "",
      "enabled": true,
      "serviceCode": "wns",
      "code": "",
      "path": "",
      "navigationURL": "wns-citizen/home",
      "leftIcon": "custom:water-tap",
      "rightIcon": "",
      "queryParams": ""
    },
    {
      "id": 1928,
      "name": "Water & Sewerage",
      "url": "url",
      "displayName": "Water & Sewerage",
      "orderNumber": 13,
      "parentModule": "",
      "enabled": true,
      "serviceCode": "wns",
      "code": "null",
      "navigationURL": "wns-citizen/home",
      "path": "wns",
      "leftIcon": "custom:water-tap",
      "rightIcon": ""
    },
    {
      "id": 1929,
      "name": "Water & Sewerage",
      "url": "url",
      "displayName": "Water & Sewerage",
      "orderNumber": 13,
      "parentModule": "",
      "enabled": true,
      "serviceCode": "wns",
      "code": "null",
      "navigationURL": "wns/search",
      "path": "wns",
      "leftIcon": "custom:water-tap",
      "rightIcon": ""
    }
{
      "rolecode": "WS_CEMP",
      "actionid": 1910,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1910,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1910,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_CEMP",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_DOC_VERIFIER",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_FIELD_INSPECTOR",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_APPROVER",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_CLERK",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1911,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_CEMP",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_DOC_VERIFIER",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_FIELD_INSPECTOR",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_APPROVER",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "WS_CLERK",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1912,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1913,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1914,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1914,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1915,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1916,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1916,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_CEMP",
      "actionid": 1916,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_CEMP",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_DOC_VERIFIER",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_FIELD_INSPECTOR",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_APPROVER",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_CLERK",
      "actionid": 1917,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_CEMP",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_DOC_VERIFIER",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_FIELD_INSPECTOR",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_APPROVER",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "SW_CLERK",
      "actionid": 1918,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1919,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1920,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1920,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1921,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1921,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1922,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1922,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1923,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1923,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1924,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1925,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1926,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1927,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "CITIZEN",
      "actionid": 1928,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 1929,
      "actioncode": "",
      "tenantId": "pb"
    },
    {
      "rolecode": "EMPLOYEE",
      "actionid": 716,
      "actioncode": "",
      "tenantId": "pb"
    }
  • Define the list of Water & Sewerage service employee roles @ roles.json

{
        "code": "WS_CEMP",
        "name": "WS Counter Employee",
        "description": "WS counter employee can take action as citizen"
      },
      {
        "code": "WS_DOC_VERIFIER",
        "name": "WS Document Verifier",
        "description": "WS Document Verifier"
      },
      {
        "code": "WS_FIELD_INSPECTOR",
        "name": "WS Field Inspector",
        "description": "WS Inspector can take action like verify and forword, send back to do"
      },
      {
        "code": "WS_APPROVER",
        "name": "WS Approver",
        "description": "WS Approver can approve the connection application"
      },
      {
        "code": "WS_CLERK",
        "name": "WS Clerk",
        "description": "WS Clerk can activate the connection application"
      },
      {
        "code": "SW_CEMP",
        "name": "SW Counter Employee",
        "description": "SW counter employee can take action as citizen"
      },
      {
        "code": "SW_DOC_VERIFIER",
        "name": "SW Document Verifier",
        "description": "SW Document Verifier"
      },
      {
        "code": "SW_FIELD_INSPECTOR",
        "name": "SW Field Inspector",
        "description": "SW Inspector can take action like verify and forword, send back to do"
      },
      {
        "code": "SW_APPROVER",
        "name": "SW Approver",
        "description": "SW Approver can approve the connection application"
      },
      {
        "code": "SW_CLERK",
        "name": "SW Clerk",
        "description": "SW Clerk can activate the connection application"
      }

Migrate the following IDGEN formats to
https://github.com/egovernments/egov-mdms-data/blob/master/data/pb/common-masters/IdFormat.json

{
        "format": "WS/[CITY.CODE]/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "waterservice.connection.id"
     },
     {
        "format": "SW/[CITY.CODE]/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "sewerageservice.connection.id"
     },
     {
        "format": "WS/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "ws.receipt.id"
     },
     {
        "format": "SW/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "sw.receipt.id"
     },
     {
        "format": "WS_AP/[CITY.CODE]/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "waterservice.application.id"
     },
     {
        "format": "SW_AP/[CITY.CODE]/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "sewerageservice.application.id"
     },
     {
        "format": "WS.ONE_TIME_FEE/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "ws.one_time_fee.receipt.id"
     },
     {
        "format": "SW.ONE_TIME_FEE/[fy:yyyy-yy]/[SEQ_EGOV_COMMON]",
        "idname": "sw.one_time_fee.receipt.id"
     }

Endpoints

Please whitelist endpoint from zuul wherever required

Auth Based Access: Employee

  • /ws-services/wc/_create

  • /ws-services/wc/_update 

  • /sw-services/wc/_update 

  • /sw-services/wc/_create 

  • /ws-calculator/waterCalculator/_estimate

  • /sw-calculator/sewerageCalculator/_estimate

  • /ws-services/wc/_search 

  • /sw-services/wc/_search

 

 

Auth Based: Citizen, Employee

  • /ws-services/wc/_search :- mixed (both whitelisted and auth based)

  • /sw-services/wc/_search :- mixed (both whitelisted and auth based)

 

Open EndPoints

In, helm/environments/qa.yaml - Please whitelist endpoint from zuul for ‘egov-open-endpoints-whitelist’ param and add value /pdf-service/v1/_create 

Users:

  • Employee with ULB level access 

  • Citizen associated with an ULB

Workflow config 

We need to create the WF config in BusinessService. To do that call the “_create” API in BusinessService and add the below JSON content in the request body.

Businees Service Request URI - https://egov-micro-dev.egovernments.org/egov-workflow-v2/egov-wf/businessservice/_create

Water Service WF Config:

{
  “RequestInfo” : {
      “authToken” : “authTokenValue”
   },
  "BusinessServices": [
    {
      "tenantId": "pb",
      "businessService": "NewWS1",
      "business": "ws-services",
      "businessServiceSla": 259200000,
      "states": [
        {
          "sla": null,
          "state": null,
          "applicationStatus": null,
          "docUploadRequired": false,
          "isStartState": true,
          "isTerminateState": false,
          "isStateUpdatable": false,
          "actions": [
            {
              "action": "INITIATE",
              "nextState": "INITIATED",
              "roles": [
                "CITIZEN",
                "WS_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "INITIATED",
          "applicationStatus": "INITIATED",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": true,
          "actions": [
            {
              "action": "SUBMIT_APPLICATION",
              "nextState": "PENDING_FOR_DOCUMENT_VERIFICATION",
              "roles": [
                "CITIZEN",
                "WS_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "PENDING_FOR_CITIZEN_ACTION",
          "applicationStatus": "PENDING_FOR_CITIZEN_ACTION",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": true,
          "actions": [
            {
              "action": "RESUBMIT_APPLICATION",
              "nextState": "PENDING_FOR_DOCUMENT_VERIFICATION",
              "roles": [
                "CITIZEN",
                "WS_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "PENDING_FOR_DOCUMENT_VERIFICATION",
          "applicationStatus": "PENDING_FOR_DOCUMENT_VERIFICATION",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": true,
          "actions": [
            {
              "action": "VERIFY_AND_FORWARD",
              "nextState": "PENDING_FOR_FIELD_INSPECTION",
              "roles": [
                "WS_DOC_VERIFIER"
              ]
            },
            {
              "action": "REJECT",
              "nextState": "REJECTED",
              "roles": [
                "WS_DOC_VERIFIER"
              ]
            },
            {
              "action": "SEND_BACK_TO_CITIZEN",
              "nextState": "PENDING_FOR_CITIZEN_ACTION",
              "roles": [
                "WS_DOC_VERIFIER"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "REJECTED",
          "applicationStatus": "REJECTED",
          "isStateUpdatable": false,
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": true
        },
        {
          "sla": 86400000,
          "state": "PENDING_FOR_FIELD_INSPECTION",
          "applicationStatus": "PENDING_FOR_FIELD_INSPECTION",
          "docUploadRequired": false,
          "isStartState": false,
          "isStateUpdatable": true,
          "isTerminateState": false,
          "actions": [
            {
              "action": "VERIFY_AND_FORWARD",
              "nextState": "PENDING_APPROVAL_FOR_CONNECTION",
              "roles": [
                "WS_FIELD_INSPECTOR"
              ]
            },
            {
              "action": "REJECT",
              "nextState": "REJECTED",
              "roles": [
                "WS_FIELD_INSPECTOR"
              ]
            },
            {
              "action": "SEND_BACK_FOR_DOCUMENT_VERIFICATION",
              "nextState": "PENDING_FOR_DOCUMENT_VERIFICATION",
              "roles": [
                "WS_FIELD_INSPECTOR"
              ]
            }
          ]
        },
        {
          "sla": 43200000,
          "state": "PENDING_APPROVAL_FOR_CONNECTION",
          "applicationStatus": "PENDING_APPROVAL_FOR_CONNECTION",
          "docUploadRequired": false,
          "isStartState": false,
          "isStateUpdatable": true,
          "isTerminateState": false,
          "actions": [
            {
              "action": "APPROVE_FOR_CONNECTION",
              "nextState": "PENDING_FOR_PAYMENT",
              "roles": [
                "WS_APPROVER"
              ]
            },
            {
              "action": "REJECT",
              "nextState": "REJECTED",
              "roles": [
                "WS_APPROVER"
              ]
            },
            {
              "action": "SEND_BACK_FOR_FIELD_INSPECTION",
              "nextState": "PENDING_FOR_FIELD_INSPECTION",
              "roles": [
                "WS_APPROVER"
              ]
            }
          ]
        },
        {
          "sla": 43200000,
          "state": "PENDING_FOR_PAYMENT",
          "applicationStatus": "PENDING_FOR_PAYMENT",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": false,
          "actions": [
            {
              "action": "PAY",
              "nextState": "PENDING_FOR_CONNECTION_ACTIVATION",
              "roles": [
                "CITIZEN",
                "WS_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "PENDING_FOR_CONNECTION_ACTIVATION",
          "applicationStatus": "PENDING_FOR_CONNECTION_ACTIVATION",
          "isStateUpdatable": true,
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "actions": [
            {
              "action": "ACTIVATE_CONNECTION",
              "nextState": "CONNECTION_ACTIVATED",
              "roles": [
                "WS_CLERK"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "CONNECTION_ACTIVATED",
          "applicationStatus": "CONNECTION_ACTIVATED",
          "isStateUpdatable": false,
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": true
        }
      ]
    }
  ]
}

Sewerage Service WF Config:

{
  “RequestInfo” : {
      “authToken” : “authTokenValue”
   },
  "BusinessServices": [
    {
      "tenantId": "pb",
      "businessService": "NewSW1",
      "business": "sw-services",
      "businessServiceSla": 259200000,
      "states": [
        {
          "sla": null,
          "state": null,
          "applicationStatus": null,
          "docUploadRequired": false,
          "isStartState": true,
          "isTerminateState": false,
          "isStateUpdatable": false,
          "actions": [
            {
              "action": "INITIATE",
              "nextState": "INITIATED",
              "roles": [
                "CITIZEN",
                "SW_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "INITIATED",
          "applicationStatus": "INITIATED",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": true,
          "actions": [
            {
              "action": "SUBMIT_APPLICATION",
              "nextState": "PENDING_FOR_DOCUMENT_VERIFICATION",
              "roles": [
                "CITIZEN",
                "SW_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "PENDING_FOR_CITIZEN_ACTION",
          "applicationStatus": "PENDING_FOR_CITIZEN_ACTION",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": true,
          "actions": [
            {
              "action": "RESUBMIT_APPLICATION",
              "nextState": "PENDING_FOR_DOCUMENT_VERIFICATION",
              "roles": [
                "CITIZEN",
                "SW_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "PENDING_FOR_DOCUMENT_VERIFICATION",
          "applicationStatus": "PENDING_FOR_DOCUMENT_VERIFICATION",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": true,
          "actions": [
            {
              "action": "VERIFY_AND_FORWARD",
              "nextState": "PENDING_FOR_FIELD_INSPECTION",
              "roles": [
                "SW_DOC_VERIFIER"
              ]
            },
            {
              "action": "REJECT",
              "nextState": "REJECTED",
              "roles": [
                "SW_DOC_VERIFIER"
              ]
            },
            {
              "action": "SEND_BACK_TO_CITIZEN",
              "nextState": "PENDING_FOR_CITIZEN_ACTION",
              "roles": [
                "SW_DOC_VERIFIER"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "REJECTED",
          "applicationStatus": "REJECTED",
          "isStateUpdatable": false,
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": true
        },
        {
          "sla": 86400000,
          "state": "PENDING_FOR_FIELD_INSPECTION",
          "applicationStatus": "PENDING_FOR_FIELD_INSPECTION",
          "docUploadRequired": false,
          "isStartState": false,
          "isStateUpdatable": true,
          "isTerminateState": false,
          "actions": [
            {
              "action": "VERIFY_AND_FORWARD",
              "nextState": "PENDING_APPROVAL_FOR_CONNECTION",
              "roles": [
                "SW_FIELD_INSPECTOR"
              ]
            },
            {
              "action": "REJECT",
              "nextState": "REJECTED",
              "roles": [
                "SW_FIELD_INSPECTOR"
              ]
            },
            {
              "action": "SEND_BACK_FOR_DOCUMENT_VERIFICATION",
              "nextState": "PENDING_FOR_DOCUMENT_VERIFICATION",
              "roles": [
                "SW_FIELD_INSPECTOR"
              ]
            }
          ]
        },
        {
          "sla": 43200000,
          "state": "PENDING_APPROVAL_FOR_CONNECTION",
          "applicationStatus": "PENDING_APPROVAL_FOR_CONNECTION",
          "docUploadRequired": false,
          "isStartState": false,
          "isStateUpdatable": true,
          "isTerminateState": false,
          "actions": [
            {
              "action": "APPROVE_FOR_CONNECTION",
              "nextState": "PENDING_FOR_PAYMENT",
              "roles": [
                "SW_APPROVER"
              ]
            },
            {
              "action": "REJECT",
              "nextState": "REJECTED",
              "roles": [
                "SW_APPROVER"
              ]
            },
            {
              "action": "SEND_BACK_FOR_FIELD_INSPECTION",
              "nextState": "PENDING_FOR_FIELD_INSPECTION",
              "roles": [
                "SW_APPROVER"
              ]
            }
          ]
        },
        {
          "sla": 43200000,
          "state": "PENDING_FOR_PAYMENT",
          "applicationStatus": "PENDING_FOR_PAYMENT",
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "isStateUpdatable": false,
          "actions": [
            {
              "action": "PAY",
              "nextState": "PENDING_FOR_CONNECTION_ACTIVATION",
              "roles": [
                "CITIZEN",
                "SW_CEMP"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "PENDING_FOR_CONNECTION_ACTIVATION",
          "applicationStatus": "PENDING_FOR_CONNECTION_ACTIVATION",
          "isStateUpdatable": true,
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": false,
          "actions": [
            {
              "action": "ACTIVATE_CONNECTION",
              "nextState": "CONNECTION_ACTIVATED",
              "roles": [
                "SW_CLERK"
              ]
            }
          ]
        },
        {
          "sla": null,
          "state": "CONNECTION_ACTIVATED",
          "applicationStatus": "CONNECTION_ACTIVATED",
          "isStateUpdatable": false,
          "docUploadRequired": false,
          "isStartState": false,
          "isTerminateState": true
        }
      ]
    }
  ]
}

PDF Templates

Migrate the following files for PDF Generations

https://github.com/egovernments/configs/tree/master/pdf-service/format-config

ws-sanctionletter.json
ws-estimationnotice.json
ws-applicationwater.json
Ws-applicationsewerage.json
Ws-bill.json
ws-onetime-receipt.json

https://github.com/egovernments/configs/tree/master/pdf-service/data-config

ws-sanctionletter.json
ws-estimationnotice.json
ws-applicationwater.json
Ws-applicationsewerage.json
Ws-bill.json
ws-onetime-receipt.json

Note - The data-config file might access MDMS directly to fetch the details. Open each file and check is there any MDMS query (search for egov-mdms-service). If there are any MDMS query configured - update the state level tenantId value properly.

Persister Config

Indexer Config

Egov-Searcher Config

  • Add “waterbills” and “seweragebills” section to the bill-genie as mentioned in the below file. 

https://github.com/egovernments/configs/blob/master/egov-searcher/bill-genie.yml

  • Add “ws-services” and “sw-services” section to locality search as mentioned in the below file.

https://github.com/egovernments/configs/blob/master/egov-searcher/localitySearcher.yml

Infra Ops Config

MIgrate the master branch dev.yaml files configuration for to qa.yaml for the following service

  • PDF Service

  • Indexer Service

Update the WS-Services and SW-Services config values from the latest helm files.

BillingService

Update the “billGeneiURL” param in ws-service-calculation and sw-services-calculation object with the latest value - “egov-searcher/bill-genie/billswithaddranduser/_get”

File path in Dev - https://github.com/egovernments/egov-mdms-data/blob/master/data/pb/BillingService/BusinessService.json

Localisation File

https://docs.google.com/spreadsheets/d/1JTnaV1BDtFWPIX_h4y2WtmGKB-lEthTyCfnDjKzHMSE/edit#gid=0  

Service Builds

Module

Image Details

Billing Service

egovio/billing-service:6-0.0.1-DEMAND_ADVANCE_APPORTION-e8609dd

Property Service

property-services:167-PT_SERVICES_FEATURE-9386a21d

PDF Service

egovio/pdf-service:25-pdf-add-1b2fb5b

Employee

egovio/employee:380-0.0.1-RELEASE-2020-v3-01-07024bfc6

Citizen

egovio/citizen:345-0.0.1-RELEASE-2020-v3-01-07024bfc6

WS-Service

egovio/ws-services:80-1.0.0-master-67c2139c

WS-Calculator

egovio/ws-calculator:45-1.0.0-master-d7529cf4

SW-Service

egovio/sw-services:34-1.0.0-master-a2ee0ed4

SW-Calculator

egovio/sw-calculator:26-1.0.0-master-67e5a1bc

Egov-Searcher

egovio/egov-searcher:2-searcher-feature-095e997

Collection Service

egovio/collection-services:10-2.0.0-miscellaneous-collection-fix-ac1d2bb

Apportion Service

egovio/egov-apportion-service:10-0.0.1-APPORTION_ADVANCE-944d6f0


Swagger API

Postman Collection

Postman collection for Create Water and Sewerage API’s

  1. https://www.getpostman.com/collections/b6cd12cda7caaa2d4580 (Water service)

  2. https://www.getpostman.com/collections/c5ce66e0c8c263b40444 (WS Calculation Service)

  3. https://www.getpostman.com/collections/27458a8c6249d786317c (Sewerage service and calculation service)

Features Covered as part of Release (includes Phase 1 & Phase 2 Features)

Module

Feature

Citizen

Search Connection No to pay for Water / Sewerage Bill

Citizen

Pay for Water / Sewerage Bill

Citizen

View Bill For Application no

Citizen

Download / Print Receipt immediately after successful payment

Citizen

View and download receipts of past payments

Citizen

View existing connections & their details

Citizen

Apply new Water / Sewerage connection

Citizen

Edit Water / Sewerage connection application and re-submit

Citizen

View applied Water / Sewerage applications & details 

Citizen

Download & Print Application Details,Estimation Details (for field inspected applications) and Sanction Details (for approved connections)

Employee

Search Connection No

Employee

View connection details. 

Employee

View consumption details and Add meter reading (for metered connection) 

Employee

Collect Dues

Employee

Download / Print Receipt immediately after successful payment

Employee

Search Application No

Employee

Add new Water / Sewerage connection

Employee

Edit Water / Sewerage connection application

Employee

View applied Water / Sewerage applications & details 

Employee

Download & Print Application Details,Estimation Details (for field inspected applications) and Sanction Details (for approved connections)

Generate Bill for metered connections

Employee

Bill Genie Integration

Backend

Job Scheduler for scheduled demand generation

Employee

Merge and download bills

Citizen

Notification of application state change.

Citizen

Receive notification of bill generated

Citizen

Search Property criteria included for City, MobileNumber, Old Property ID, Unique Property Id

Citizen

Register Property details while applying for W&S Connection

Employee

Search Property criteria included for City, MobileNumber, Old Property Id, Unique Property Id

Employee

Register Property details while applying for W&S Connection

Citizen

Citizens can search property which belongs to another person and the same can be used to create W&S applications. This is configurable.

Bill and Receipt PDF configurations are specific to W&S module

Pending Features

Citizen

Notification of payment failure


Out of Scope

None.



  • No labels