Overview
Faecal sludge management (FSM) is a system that enables citizen to raise a request for septic tank cleaning with there ULB’s directly or reaching out to ULB counter. Citizen can track the application, make a payment for the charges and rate the service. This document contains the details about how to setup the fsm and describes the functionalities it provides.
...
Code Block |
---|
{ "tenantId": "pb", "moduleName": "FSM", "CheckList": [{ "code": "SPILAGE", "active": true, "required": true, "type": "SINGLE_SELECT", "options": [ "YES", "NO", "NA" ] }, { "code": "SAFETY_GEARS_USED", "active": true, "type": "MULTI_SELECT", "required": true, "options": [ "EYE_GEAR", "HAND_GLOVES", "NOSE_MASK" ] }, ] } |
...
Code Block |
---|
{ "tenantId { "code": "pbNUMBER_OF_TRIPS", "active": "moduleNametrue, "type": "FSMDROP_DOWN", "required": "Configfalse, "options": [ { "code":"noOfTrips", "override":false, "default":1, "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" ] } ] } |
Config ( Configuration at application level )
Code Block |
---|
{ "activetenantId":true "pb", "moduleName": "FSM", "descriptionConfig":"override:true indicates, noOfTrips poperty is allowed to override in FSM." [ { }, {"code":"noOfTrips", "codeoverride":"additionalDetails.tripAmount"false, "overridedefault":false1, "active":true, "description":"override:true indicates, tripAmountnoOfTrips poperty is allowed to override in FSM." }, { "code":"slumNameadditionalDetails.tripAmount", "override":truefalse, "active":true, "description":"override:true indicates, tripAmount poperty is allowed to override in FSM." }, { "code":"ALLOW_MODIFYslumName", "WFStateoverride":"CREATED"true, "overrideactive":[true, "propertyUsage","description":"override:true indicates, tripAmount poperty is allowed to override in FSM." }, { "code":"ALLOW_MODIFY", "WFState":"CREATED", "override":[ "propertyUsage", "vehicleType", "sanitationtype", "address.pincode", "address.city", "address.locality", "address.street", "address.doorNo", "address.landmark", "pitDetail" ], "active":true, "description":"properties in override allowed to modify when FSM application moving from CREATED Status to next status." } ] } |
...
Configurations that we can manage through values.yml fsm-calculator in infraops repo as follows
values.yml for fms-calculator can be found here
Description | name in values.yml | Current Value |
---|---|---|
id-gen host, to generate the application number |
|
|
Kafka Consumer Group |
|
|
kafka topic to which service push data to save new fsm application |
|
|
kafka topic to which service push data to save workflow status |
|
|
kafka topic to which service push data to update the existing fsm application |
|
|
mdms service host |
|
|
billing-service host |
|
|
fsm-calculator service host |
|
|
workflow v2 service host |
|
|
ui host, to return send the url of new application in sms notification |
|
|
vendor service host, to get DSO details |
|
|
Vehicle service host, to get vehicle details and manage vehicleTrip |
|
|
Collection service host, to get the payment details |
|
|
localization service host, to get the locale data |
|
|
user service host, to get the locale data |
|
|
pdf service host, to get the locale data |
|
|
url shortening service host, to get the short url for the long once |
|
|
Sample values.yml
Code Block |
---|
- name: EGOV_IDGEN_HOST valueFrom: configMapKeyRef: name: egov-service-host key: egov-idgen - name: EGOV_MDMS_HOST valueFrom: configMapKeyRef: name: egov-service-host key: egov-mdms-service - name: EGOV_URL_SHORTNER_HOST valueFrom: configMapKeyRef: name: egov-service-host key: egov-url-shortening - name: EGOV_PDF_HOST valueFrom: configMapKeyRef: name: egov-service-host key: pdf-service - name: EGOV_USER_HOST valueFrom: configMapKeyRef: name: egov-service-host key: egov-user - name: EGOV_LOCATION_HOST valueFrom: configMapKeyRef: name: egov-service-host key: egov-location - name: EGOV_LOCALIZATION_HOST valueFrom: configMapKeyRef: name: egov-service-host key: egov-localization - name: EGOV_BILLINGSERVICE_HOST valueFrom: configMapKeyRef: name: egov-service-host key: billing-service - name: EGOV_COLLECTION_SERVICE_HOST valueFrom: configMapKeyRef: name: egov-service-host key: collection-services - name: EGOV_FSM_CALCULATOR_HOST valueFrom: configMapKeyRef: name: egov-service-host key: fsm-calculator - name: EGOV_VEHICLE_HOST valueFrom: configMapKeyRef: name: egov-service-host key: vehicle - name: EGOV_VENDOR_HOST valueFrom: configMapKeyRef: name: egov-service-host key: vendor - name: EGOV_UI_APP_HOST valueFrom: configMapKeyRef: name: egov-config key: egov-services-fqdn-name - name: WORKFLOW_CONTEXT_PATH valueFrom: configMapKeyRef: name: egov-service-host key: egov-workflow-v2 - name: WORKFLOW_TRANSITION_PATH value: "egov-workflow-v2/egov-wf/process/_transition" - name: EGOV_IDGEN_FSM_APPLICATIONNUM_FORMAT value: "[CITY.CODE]-FSM-[cy:yyyy-MM-dd]-[SEQ_EGOV_FSM]" - name: SPRING_KAFKA_CONSUMER_GROUP_ID value: egov-fsm-service - name: PERSISTER_SAVE_FSM_TOPIC value: save-fsm-application - name: PERSISTER_UPDATE_FSM_TOPIC value: update-fsm-application - name: PERSISTER_UPDATE_FSM_WORKFLOW_TOPIC value: update-fsm-workflow-application |
Users
User | Role | Description | How to create |
---|---|---|---|
FSM Creator |
| Can create FSM Application on behalf of Citizen | Through HRMS with role |
FSM Editor |
|
| Through HRMS with role |
FSM Admin |
|
| Through HRMS with role |
DSO |
|
| Through vendor service, use the create DSO Request from postman Collection |
FSTP Operator |
|
| Through HRMS with role |
Collector |
|
| Through HRMS with role |
- User with userType employee and role FSM_CREATOR_EMP
role,
...
Introduced new inbox service to get the fsm applications in registered ULB employee inbox, With this ULB employee can track the application or perform the actions based on employee role.
ULB employee can also apply the filter to check the particular state or applications or any other filter as required.
Interaction Diagram
TBD
Reference Docs
Doc Links
...
Title
...
Link
...
Workflow Technical Document
...
FSM apply as service
As of now we are providing fsm as adhoc service. In order to avoid multiple times user has to create the fsm request every time, In the system itself after some particular days, we will create same fsm application and if user wants service, he will pay the amount .
MDMS changes
As we mentioned above, we need to define time paramter, in order to create periodic application.For that we added the periodic service master where we will configure the time limit and either schedular is enabled or not. Please find the below configuration and location.
https://github.com/egovernments/egov-mdms-data/blob/DEV/data/pb/amritsar/FSM/PeriodicService.json
{ "tenantId": "pb.amritsar",
"moduleName": "FSM",
"PeriodicService":[
{
"timeLimit" : 864000000,
"isSchedularConfiguration":true
}
]
}
cronjob will read the cron job’s configured in the cronjobapiconfig.json and based on the schedular time it will call the api which is configured.Please find the below configuration and file location.
https://github.com/egovernments/egov-mdms-data/blob/DEV/data/pb/common-masters/CronJobAPIConfig.json
{ "jobName": "daily",
"active": "true",
"method": "POST",
"url": "http://fsm.egov:8080/fsm/v1/_schedular",
"payload": {
"RequestInfo": "{DEFAULT_REQUESTINFO}" },
"header": { "Content-Type": "application/json"
}
}
We are using fsm/v1/_schedular api. This api will read the master data for each tenant and based on the time limit configured for that tenant, it will get the all eligiable aplications and create periodic applications for those fsm applications.
Infra changes
We added new chart called mdms-read-cronjob.Please find the below chart location.
Interaction Diagram
TBD
Reference Docs
Doc Links
Title | Link |
Workflow Technical Document | |
User Technical Document | |
MDMS Technical Document | NEEDS TO BE UPDATED |
IDGen Technical Document | NEEDS TO BE UPDATED |
Localization Technical Document | NEEDS TO BE UPDATED |
Persister Technical Document | NEEDS TO BE UPDATED |
SMS Notification Technical Document | NEEDS TO BE UPDATED |
HRMS Technical Document | NEEDS TO BE UPDATED |
API Contract | |
Postman Collection |
API List
Title | Link |
|
|
|
| |
| |
| |
| |
| |
| |
/fsm/v1/_schedular |