Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Muster Roll UI Tech Documentation
This module helps in processing muster rolls through the workflow. Muster rolls created from SHG app end up in the web interface for workflow approval.
This module has 5 associated screens :
Inbox
Edit
View
Search
Set module code as "AttendenceMgmt" in Module.js of AttendenceMgmt Module. Refer https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/tenant/citymodule.json
Enable Module in App.js. Update the object ‘enabledModules’. Use the code “AttendenceMgmt”. This code should match with the code of the cityModule.json, mentioned above.
S.No
API
Action ID
Roles
2
/muster-roll/v1/_search
37
MUSTER_ROLL_VERIFIER,MUSTER_ROLL_APPROVER
3
/muster-roll/v1/_update
38
MUSTER_ROLL_VERIFIER,MUSTER_ROLL_APPROVER
5
/egov-pdf/download/musterRoll/muster-roll
104
MUSTER_ROLL_APPROVER,MUSTER_ROLL_VERIFIER
6
/egov-hrms/employees/_search
4
EMPLOYEE_COMMON
7
/expense-calculator/v1/_estimate
108
MUSTER_ROLL_APPROVER,MUSTER_ROLL_VERIFIER
8
/inbox/v2/_search
65
EMPLOYEE_COMMON
S.No
Screen
Navigation URL
LeftIcon Updates
Roles
1
Muster Roll Search
/works-ui/employee/attendencemgmt/search-attendance
dynamic:AttendanceIcon
MUSTER_ROLL_APPROVER,MUSTER_ROLL_VERIFIER
2
Muster Roll Inbox
/works-ui/employee/attendencemgmt/inbox
dynamic:AttendanceIcon
EMPLOYEE_COMMON
S.No
Screen
Configuration
1
Search
2
Inbox
TenantID
Module
statea
rainmaker-attendencemgmt
UI Component Name
Business Service
WorkflowActions
MR
1. API-based Data -
The amountTotal Wage Amount - Amount shown in the view muster roll screen is fetched from expense-calculator
2. Inbox / Search Screen :
Please use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility will return a config that will run through RenderFormFields.
Refer to docs for Pre-Process config in Component comments.
Workorder/Contract UI Tech Documentation
This module helps in creating a work order for the Project based on the estimates designed. This enables in deciding the Tendering, Quotation and Nomination. Based on the nomination, CBO is being mapped to the respective work order.
This module has 5 associated screens :
Create
Search
Modify
View
Inbox
1
Role Of CBO
2
Document Config
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/works/DocumentConfig.json
Set module code as “Contracts” in Module.js of Contracts Module. Refer https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/tenant/citymodule.json
Enable Module in App.js. Update the object ‘enabledModules’. Use the code “Contracts”. This code should match the code of the cityModule.json, mentioned above.
1
/contract-service/contract/v1/_create
66
WORK_ORDER_CREATOR
2
/contract-service/contract/v1/_search
68
WORK_ORDER_CREATOR, WORK_ORDER_APPROVER, WORK_ORDER_VERIFIER
3
/contract-service/contract/v1/_update
67
WORK_ORDER_CREATOR, WORK_ORDER_APPROVER, WORK_ORDER_VERIFIER
4
/estimate-service/estimate/v1/_search
10
ESTIMATE_VERIFIER
5
/pms/project/v1/_search
52
PROJECT_VIEWER
6
/egov-hrms/employees/_search
4
EMPLOYEE_COMMON
7
/org-services/organisation/v1/_search
91
ORG_ADMIN, WORK_ORDER_CREATOR, MUKTA_ADMIN
8
/wms/contract/_search
89
WORK_ORDER_CREATOR, WORK_ORDER_VERIFIER
1
Contract Inbox
/works-ui/employee/contracts/inbox
dynamic:ContractIcon
WORK_ORDER_CREATOR, WORK_ORDER_VERIFIER, WORK_ORDER_APPROVER
2
Create Contract
/works-ui/employee/estimate/search-estimate
dynamic:ContractIcon
WORK_ORDER_CREATOR
1
Create
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/commonMuktaUiConfig/CreateWorkOrderConfig.json
2
Search
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/commonMuktaUiConfig/SearchContractConfig.json
3
Inbox
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/commonMuktaUiConfig/InboxConfigContracts.json
pg
rainmaker-contracts
pg
rainmaker-common-masters
pg
rainmaker-common
pg
rainmaker-workflow
pg.citya
rainmaker-pg.citya
WorkflowActions
contract-approval-mukta
1. API-based Data -
Name of CBO - This field is being captured on the Create screen and Modify screen. Data for this field comes from the backend.
CBO ID - This field is being set based on the value selected in the Name Of CBO.
Name of Officer In Charge - This field is being populated based on the HRMS Search. Here the role is hardcoded to ‘OFFICER_IN_CHARGE’.
Designation of Officer In Charge - This field is being set based on the value selected in the Name of Officer in charge.
Work Order Amount - This field shows the calculated amount of Total Estimated Cost minus the Overheads which has ‘isWorkOrderValue’ as true. Please refer to this OverHeads config for Amount calculation.
The role of CBO will be shown based on the calculated Work Order Amount. If the calculated Work Order Amount is less than the ‘amount’ in RoleOfCBO Config, show Implementation Agency else show Implementation Partner. This logic will vary based on the updates in the RoleOfCBO config.
Document Config - Based on the document config, respective documents will be rendered on the Create Screen. Please mention the validations, file type limits and file size limits in this config.
Work Order Terms and Conditions - This component will help input the description in the table. Users can add and delete the rows. The first row will not be deleted, clicking on the delete button will empty the first row. Refer Component - WOTermsAndConditions.
3. Create Screen:
Please use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config which will run through FormComposer.
Refer to docs for Pre-Process config in Component comments.
4. Inbox / Search Screen :
Please use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility will return a config which will run through RenderFormFields.
Refer to docs for Pre-Process config in Component comments.
Work order is created for an approved estimate in order to award the work to CBO. CBO starts the work to complete it within a given time period.
In case organization comes to know that they are not in a position to complete the work within the given time frame due to various reasons, they need to inform the same to the officer in-charge of project and apply for time extension which is then subject to approval/ canceling of work order based on the analysis done by the ULB.
Requests for time extension can be directly raised by CBO using the mobile application and by the officer in-charge of the project on behalf of CBO using web application. Once a request is raised it goes for verification and approval.
Create Time Extension
View Time Extension
Edit Time Extension
Search Time Extension ( Same as search work order screen)
Inbox ( Same as work order inbox )
Work order must be in Accepted state
Existing Time Extension requests, if already created, must not be in workflow
At Least one muster roll must be approved
Login with work order creator role and Navigate to Home page.
Home > Work Orders > Inbox > Search Work Order > View Work Order > Request Time Extension (From Action Menu)
A screen similar to the Work Order View screen is opened along with two new input fields
Enter time extension value (in days) and reason in those two inputs and click on Create action button
A workflow popup is opened where users can enter the assignee and relevant comments. Click on Submit button
A response page is opened which shows the newly created revised work order application’s number
There is no separate inbox for time extension. Work order inbox will list the time extension requests which are INWORKFLOW state. Clicking on the time extension request will open a view time extension screen where the user can take actions on the request based on the roles defined in the workflow. Alternatively, users can go to the work order search screen to search for any time extension request.
Wage seeker configuration details
This module helps in creating an individual (Wage Seeker), it is needed in Mukta to assign work, track attendance and process DBTs.
This module has 3 associated screens :
Search
View
Modify
Set module code as “Masters” in Module.js for the Masters (Organization) Module. Refer
Enable Module in App.js. Update the object ‘enabledModules’. Use the code “Masters”. This code should match the code of the cityModule.json, mentioned above.
Sample object for a sidebar action defined in MDMS (containing the navigation Url)
NA
Modify Individual Screen
Use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config which will run through FormComposer.
Refer to docs for Pre-Process configuration of Component comments.
Search Individual Screen
Use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility will return a config which will run through RenderFormFields.
Refer to docs for Pre-Process configuration of Component comments.
Validations added
Form validations are integrated within the Screen Configurations. To facilitate this, include the appropriate populators for the respective validations. Additionally, make sure to specify the JSON path necessary for the pre-processing to function correctly.
Delete API Usage
To modify existing skills, the "deleteIndividual" and "update Individual" APIs are utilized.
If skills are already present, they can be updated using the "update" API. If any skills need to be removed, the "delete" API is used. In the case of skill removal, the entire skill object should be sent with the 'isDeleted' flag set to true.
Organization Tech Document
This module helps in creating an organization which are business functions that work with ULB to execute projects. These can be typical contractors, SHGs or material vendors. All of them are registered under the same Organization Master.
This module has 4 associated screens :
Create
Search
View
Modify
Enable Module in App.js. Update the object ‘enabledModules’. Use the code “Masters”. This code should match with the code of the cityModule.json, mentioned above.
NA
Custom Components used
TransferCodeTable -
This component is a common component used to show Tax identifiers and Transfer Codes input options in the ‘Financial Details’ section in Create screen
Dropdown options for tax identifiers and transfer codes are populated by MDMS data
Used can select type via dropdown and value needs to be entered for the corresponding type
Users can add and delete rows for tax identifiers since there can be multiple identifiers. First row won't be deleted.
Please use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config that will run through FormComposer.
Refer to docs for Pre-Process config in Component comments.
Tax Identifiers and Transfer Codes are MDMS data.
3. Search Organization Screen
Please use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility will return a config that will run through RenderFormFields.
Refer to docs for Pre-Process config in Component comments.
Validations added
All Form validations are being added in the Screen Configurations. Add the populators for respective validations and mention the JSON path for the Pre-Process to work.
IFSC code has 2 validations as below
Pattern validation (given in config)
Third-party API is being used to get band and branch name based on entered valid IFSC code, This API throws 404 if the code is not valid, in that case the valid error message is displayed below the input field
Tax identifiers are not mandatory while creating Organisation. But as per API implementation, it's required in payload hence we send a dummy identifier value if the user has not entered anything in Tax identifier input. In the View Organisation screen if the PAN value is above the dummy value then ‘NA’ is displayed on the screen.
Default value: Type => PAN, Value => XXXXX0123X
Estimate module frontend tech documentation
The Estimate module helps in creating estimates based on projects created. This enables in deciding the Tendering, and Quotation.
The module has 5 associated screens :
Create Estimate
Search Estimate
Edit Estimate
View Estimate
Estimate Inbox
Set module code as “Estimate” in Module.js of Estimate Module. Refer to the file
Enable Module in App.js. Update the object ‘enabledModules’. Use the code Estimate. This code should match the code of the cityModule.json, mentioned above.
Sample object for a sidebar action defined in MDMS (containing navigationUrl )
For Workflow related actions, the View screens use two components:
Custom Components used in Estimate:
Document Config -
Used in Create Estimate Screen to capture Non-Sor line items.
Used in Create Estimate Screen to capture Overhead items.
Used in Create Estimate Screen to calculate and render Total Estimate Amount.
Used in Create Estimate screen to capture labour and material costs. The total labour and material costs cannot be greater than the total Estimate Amount.
Create Estimate Screen:
Use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config which will run through FormComposer.
Refer to docs for Pre-Process config in Component comments.
UOM and Overheads captured in the create screen are MDMS data.
Inbox / Search Screen:
Use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility will return a config which will run through RenderFormFields.
Refer to docs for Pre-Process config in Component comments.
Project module frontend tech documentation
The Project module enables the Junior Engineer to capture the project details, search, view and modify the existing projects. This module is the initial step in starting the work.
The module has 4 associated screens :
Create
Search
Modify
View
Set module code as “Project” in Module.js of Project Module. Refer https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/tenant/citymodule.json.
Enable module in App.js. Update the object ‘enabledModules’. Use the code “Project”. This code should match the code of cityModule.json, mentioned above.
The project created can be downloaded in PDF format from the View Project screen in the project module. The PDF contains the respective project descriptions, work details, and location details.
PDF URL : https://works-dev.digit.org/egov-pdf/download/project/project-details?projectId=<project-Id>&tenantId=<tenant-Id>
NA
Create Screen:
Use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility returns a config that will run through the FormComposer.
Refer to docs for pre-process config in component comments.
Search Screen:
Use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility returns a config that will run through the RenderFormFields.
Refer to docs for pre-process config in component comments.
Custom Components Used in Projects:
Form Validations: Verify that all necessary form validations are included in the screen configurations. Add populators for respective validations and specify the JSON path to enable the pre-process function.
This module is used to handle all billing-related actions such as create, update and view Bills.
This module has 5 associated screens :
Create (Purchase Bill)
Search
View (Wage, Purchase, Supervision)
Modify (Purchase Bill)
Download Bills
Set module code as “Expenditure” in Module.js for Billing Module. Refer
Enable Module in App.js. Update the object ‘enabledModules’. Use the code “Expenditure”. This code should match with the code of the cityModule.json, mentioned above.
Sample object for a sidebar action define in MDMS (containing navigationUrl)
<details>
Create Purchase Bill Screen
Please use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config which will run through FormComposer.
Refer docs for Pre-Process config in Component comments.
Search Bill Screen
Please use the common utility “preProcessMDMSConfigInboxSearch”.
Pass the associated dependencies for the config.
The utility will return a config which will run through RenderFormFields.
Refer docs for Pre-Process config in Component comments.
Checkbox selection is added to results table displayed in search screen based on search config passed via MDMS
Download Bill Screen
DownloadBillConfig is used to render table to show bills where download link is provided to download respective bills
All the Inbox and Search screens throughout the app are rendered using the component
Set module code as “Masters” in Module.js for Masters (Organization) Module. Refer
Refer Component:
All the Inbox and Search Screens throughout the app are rendered using this component
Business Service name - “mukta-estimate”. Refer to the MDMS file for workflow businessServices names -
-> For calling the update API with appropriate workflow action (through the action bar rendered at the bottom of the view screen). This component has all the logic to show actions according to the logged-in user, showing relevant popups and calling the update API to execute an action.
Popups are rendered based on configMap defined in this config file .
-> To show the workflow history on View screens.
Based on the , respective documents will be rendered on the Create Screen. Please mention the validations, file type limits and file size limits in this config
NonSOR Table -
Overheads Table -
Total Estimate Amount -
UploadFileComposer -
Used in Create Estimate Screen to render document upload section using
Labour and Material Analysis-
All the Inbox and Search screens throughout the app are rendered using this component .
Document Configuration - Based on the , the required documents will be rendered on the Create Screen. Ensure to specify the validations, file type, and file size limits in this configuration.
All the Inbox and Search Screens throughout the app are rendered using this component
Measurement
SOR
Project
Estimate
Workorder
Attendance
MusterRolls
Organization
Wageseeker
HRMS
1
/individual/v1/_search
71
MUKTA_ADMIN, ORG_ADMIN
2
/individual/v1/_update
72
MUKTA_ADMIN, ORG_ADMIN
3
/individual/v1/_delete
74
MUKTA_ADMIN, ORG_ADMIN
1
Search Individual
/works-ui/employee/masters/search-wageseeker
dynamic:WageseekerIcon
MUKTA_ADMIN
1
Create/Modify
2
Search
pg
rainmaker-masters
pg
rainmaker-common-masters
pg
rainmaker-common
pg.citya
rainmaker-pg.citya
S.No.
Data
MDMS Link
1
OrgType
2
OrgFunctionCategory
3
OrgFunctionClass
4
OrgTaxIdentifier
5
BankAccType
6
OrgTransferCode
7
TenantBoundary
S.No
API
Action ID
Roles
1
/org-services/organisation/v1/_create
100
MUKTA_ADMIN
2
/org-services/organisation/v1/_search
91
MUKTA_ADMIN, ORG_ADMIN, WORK_ORDER_CREATOR
3
/org-services/organisation/v1/_update
101
MUKTA_ADMIN
S.No
Screen
Navigation URL
LeftIcon Updates
Roles
1
Create Organisation
/works-ui/employee/masters/create-organization
dynamic:OrganisationIcon
MUKTA_ADMIN
2
Search Organisation
/works-ui/employee/masters/search-organization
dynamic:OrganisationIcon
MUKTA_ADMIN
S.No
Screen
Configuration
1
Create/Modify
2
Search
TenantID
Module
pg
rainmaker-masters
pg
rainmaker-common-masters
pg
rainmaker-common
pg.citya
rainmaker-pg.citya
1
/estimate-service/estimate/v1/_create
9
ESTIMATE_CREATOR
2
/estimate-service/estimate/v1/_search
10
ESTIMATE_CREATOR, ESTIMATE_VERIFIER, TECHNICAL_SANCTIONER
ESTIMATE_APPROVER
ESTIMATE_VIEWER
EMPLOYEE_COMMON
3
/estimate-service/estimate/v1/_update
11
ESTIMATE_VERIFIER, TECHNICAL_SANCTIONER, ESTIMATE_APPROVER
4
/wms/estimate/_search
77
EMPLOYEE_COMMON
5
/pms/project/v1/_search
52
PROJECT_VIEWER
1
Search Estimate
/works-ui/employee/estimate/search-estimate
dynamic:EstimateIcon
ESTIMATE_VIEWER
2
Estimate Inbox
/works-ui/employee/estimate/inbox
dynamic:EstimateIcon
ESTIMATE_VERIFIER
TECHNICAL_SANCTIONER
ESTIMATE_APPROVER
ESTIMATE_CREATOR
1
Create Estimate
2
Search Estimate
3
Estimate Inbox
4
WMS Estimate Search
pg
rainmaker-common
pg
rainmaker-estimate
pg
rainmaker-common-masters
pg
rainmaker-workflow
pg.citya
rainmaker-pg.citya
1
Project Type
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/works/ProjectType.json
2
Target Demography
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/works/TargetDemography.json
3
ULB, City, Locality
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/citya/egov-location/boundary-data.json
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/cityb/egov-location/boundary-data.json
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/cityc/egov-location/boundary-data.json
4
Document Config
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/works/DocumentConfig.json
1
/pms/project/v1/_create
51
PROJECT_CREATOR
2
/pms/project/v1/_search
52
PROJECT_VIEWER
3
/pms/project/v1/_update
52
PROJECT_CREATOR
1
Create Project
/works-ui/employee/project/create-project
dynamic:ProjectIcon
PROJECT_CREATOR
2
Search Project
/works-ui/employee/project/search-project
dynamic:ProjectIcon
PROJECT_VIEWER
1
Create / Update
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/commonMuktaUiConfig/CreateProjectConfig.json
2
Search
https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/commonMuktaUiConfig/SearchProjectConfig.json
pg
rainmaker-project
pg
rainmaker-common-masters
pg
rainmaker-common
pg.citya
rainmaker-pg.citya
#
Action
Role
From State
To State
Status
1
Submit
Work Order Creator/ CBO Admin
Pending for verification
Submitted
2
Verify and Forward
Work Order Verifier
Pending for verification
Pending for approval
Verified
3
Send Back
Work Order Verifier
Pending for verification
Pending for correction
Sent Back
4
Send Back
Work Order Approver
Pending for approval
Pending for verification
Sent Back
5
Send Back To CBO
<any roles having access of action>
<Current Status>
Pending for correction
Sent Back
6
Edit/ Re-submit
Work Order Creator
Pending for correction
Pending for verification
Re-submitted
7
Approve
Work Order Approver
Pending for approval
Approved
Approved
8
Reject
<any roles having access>
<Current Status>
Rejected
Rejected
S.No
API
Action ID
Roles
1
/expense-calculator/purchase/v1/_createbill
112
BILL_CREATOR
2
/expense-calculator/v1/_search
113
BILL_CREATOR BILL_VERIFIER BILL_VIEWER BILL_ACCOUNTANT
3
/expense/bill/v1/_search
106
BILL_CREATOR BILL_VERIFIER BILL_APPROVER BILL_ACCOUNTANT
4
/wms/expense/_search
110
BILL_CREATOR BILL_VERIFIER BILL_APPROVER BILL_ACCOUNTANT
5
/expense/payment/v1/_create
116
BILL_ACCOUNTANT
6
/egov-pdf/bill/_search
114
BILL_CREATOR
7
/expense/payment/v1/_search
122
BILL_ACCOUNTANT
8
/expense/payment/v1/_update
125
BILL_ACCOUNTANT
S.No
Screen
Navigation URL
LeftIcon Updates
Roles
1
Search Bills
/works-ui/employee/expenditure/search-bill
dynamic:ExpenditureIcon
BILL_VIEWER
S.No
Screen
Configuration
1
Create/Modify Purchase bill
TenantID
Module
pg
rainmaker-expenditure
pg
rainmaker-common
pg
rainmaker-common-masters
pg
rainmaker-workflow
pg.citya
rainmaker-pg.citya
1
Relationship
2
GenderType
3
SocialCategory
4
WageSeekerSkills
5
TenantBoundary
1
UOM (Unit of Measurement)
2
Overheads
3
Document Config
S.No.
Data
MDMS Link
1
BillType
2
TenantBoundary
This module helps in taking the measurement, for an accepted contract
This module has 5 associated screens :
Create
Inbox
Edit
View
Search
Set module code as "Measurement" in Module.js of Measurement Module. Refer https://github.com/egovernments/works-mdms-data/blob/DEV/data/pg/tenant/citymodule.json
Enable Module in App.js. Update the object ‘enabledModules’. Use the code “Measurement”. This code should match with the code of the cityModule.json, mentioned above.
S.No
API
Action ID
Roles
2
to be updated
37
MB_CREATOR
3
to be updated
38
MB_VERIFIER
5
to be updated
104
MB_APPROVER
6
/egov-hrms/employees/_search
4
EMPLOYEE_COMMON
8
/inbox/v2/_search
65
EMPLOYEE_COMMON
S.No
Screen
Navigation URL
LeftIcon Updates
Roles
2
to be updated
https://github.com/egovernments/egov-mdms-data/commit/85761f2c82ced17a0259e077f6b82355e62ce35c
S.No
Screen
Configuration
1
Search
to be updated
2
Inbox
to be updated
TenantID
Module
statea
rainmaker-measurement
UI Component Name
Business Service
WorkflowActions
MB
MeasureTable:
This is the main component that handles the Logic for capturing the measurement for SOR / NONSOR based on the given processed Line items from the Estimate.
The same component has been used in the Detailed estimate which captures the detailed measurement information
The same component has the capability to be used in both create and view screens.
MeasureCard:
This component handles the logic of the inner table present inside the MeasureTable.
Wage seeker configuration details for CBO application
This module helps create wage seekers.
ROLE: ORG_ADMIN
This module contains 4 linked forms
Summary Details
1.
Aadhaar No.
Yes
Input: [0-9]
Max Length: 12
Min Length: 12
2.
Name
Yes
Input: [A-Za-z ]
Max Length: 128
Min Length: 2
3.
Guardian Name
Yes
Input: [A-Za-z ]
Max Length: 128
Min Length: 2
4.
Relationship
Yes
None
5.
Date of Birth
Yes
Age shouldn’t be less than 18 years
6.
Gender
Yes
None
7.
Social Category
No
None
8.
Mobile Number
Yes
Input: [0-9]
Max Length: 10
Min Length: 10
9.
Skills
Yes
Can not select multiple skills of same sub skill type
10.
Photograph
No
File size should be < 5 MB
1.
Pincode
No
Input: [0-9]
Max Length: 6
Min Length: 6
2.
City
Yes
None
3.
Ward
Yes
None
4.
Locality
Yes
None
5.
Street Name
No
Max Length: 64
Min Length: 0
6.
Door No
No
Max Length: 64
Min Length: 0
1.
Account Holder’s Name
Yes
Input: [A-Za-z ]
Max Length: 128
Min Length: 2
2.
Account Number
Yes
Input: [0-9]
Max Length: 18
Min Length: 9
3.
Re-enter Account Number
Yes
Input: [0-9]
Max Length: 18
Min Length: 9
4.
Account Type
Yes
None
5.
IFSC Code
Yes
Valid IFSC Code
Verified through
https://ifsc.razorpay.com
This form combines the details of the previous 3 forms, and users can tap on the respective edit icon to edit the particular details.
On submit, the wage seeker is created successfully.
1
'individual/v1/_create'
"Individual": {
"tenantId":,
"name": {"givenName": ,
"dateOfBirth":,
"gender":,
"mobileNumber":,
"address": [
{
"tenantId":,
"pincode":,
"street":,
"doorNo":,
"type": "PERMANENT",
"locality": {"code":
],
"fatherName":,
"husbandName":,
"relationship":,
"identifiers": [
{
"identifierType": "AADHAAR",
"identifierId":
}
],
"skills": [],
"photo":,
"additionalFields": {
"fields": [
{
"key": "SOCIAL_CATEGORY",
"value":
}
]
}
}
Create Individual/Wage seekers
2
'/bankaccount-service/bankaccount/v1/_create'
"bankAccounts": [
{
"tenantId":,
"serviceCode": "IND",
"referenceId": individualId,
"bankAccountDetails": [
{
"tenantId":,
"accountHolderName":
"accountNumber":,
"accountType":,
"isPrimary",
"bankBranchIdentifier": {
"type": "IFSC",
"code":,
"additionalDetails": {"ifsccode"}
},
"isActive": true,
"documents": [],
}
],
}
]
To create the bank details for the individual that was created
This module helps in logging the attendance of each individual in a register and creating the muster roll for a particular week.
ROLE: ORG_ADMIN
This module has 2 associated screens: View Register Inbox Track Attendance Table Screen
1
AttendanceHours
2
WageSeekerSkills
3
CBOMusterSubmission
This page involves several actions:
The CBO Admin selects a date range using the Date Picker.
Upon selecting a date, the entire week is automatically chosen.
After selecting the week, by clicking "Apply," the pre-saved attendance log for that week becomes visible.
The user can then modify the attendance log for each individual and save it as a draft using the "Save as Draft" button.
The user can also submit the muster roll. Upon submission, the user will be prompted to enter skills for each individual.
After entering skills, the user can submit the muster roll for that specific week.
Validations:
If no date range is selected or cleared, attempting to use the "Save as Draft" button will display an error, prompting the user to select a date range.
The ability to submit the muster roll depends on the CBOMusterSubmission MDMS Config.
Depending on the value of END_OF_WEEK:
If END_OF_WEEK is false, users can create the muster roll on any day of the week.
If END_OF_WEEK is true, users can submit the muster roll only on or after the last day of the week (Sunday).
If an existing muster roll for the selected range is in a workflow state, the Track Attendance page will be a view-only page. Otherwise, users will be able to log attendance and submit the muster roll.
The options for marking attendance are determined by the Attendance Hours list:
If the list contains two options, users can mark attendance as Full Day or Absent.
If the list has more than two options, users can mark attendance as Full Day, Half Day, or Absent.
1
attendance/v1/_search
{
"tenantId":””,
"ids":””
}
Gives the list of registers linked to the org
2
muster-roll/v1/_estimate
{
"musterRoll": {
"tenantId":,
"registerId":,
"startDate":,
"endDate":
}
}
To get the attendance log for the selected Date range
3
attendance/log/v1/_create
{"attendance": []}
To log the attendance of the individuals for the week
4
attendance/log/v1/_update
To update the attendance log of the individuals for Sent Back To CBO Muster Rolls
5
muster-roll/v1/_search
To check if any existing muster rolls present for the selected week
6
egov-workflow-v2/egov-wf/businessservice/_search
{
"tenantId":,
"businessServices": “musterRollId”,
}
To check the workflow status of the Muster Roll
<details>
1
DigitTable
Custom Table with fixed first column and other columns scrollable
2
DropDownDialog
A dialog with dropdown options
3
DateRangePicker
A custom Date Range picker to select a range of the month / year
4
DigitElevatedButton
An Elevated Submit Button
6
WorkDetailsCard
Details Card based on DIGIT Figma design
pg
rainmaker-common
pg
rainmaker-attendance
pg
rainmaker-common-masters
pg
rainmaker-workflow
pg.citya
rainmaker-pg.citya
Repositories:
This module provides the ability to create SORs and Rates
This module has 5 associated screens :
Create
Edit
View
Search
The SORs and some related masters were created using the workbench and MDMS v2.
Refer to the Workbench Release document to enable the Workbench
SOR
SOR Type
SOR Subtype
SOR Variant
UOM
Rates
Overheads
MDMS Role Action Configs
Sample data can be referred from the below sheet
Muster Roll Tech Document
This module helps in viewing and updating the muster rolls.
ROLE: ORG_ADMIN
This module has 2 associated screens :
View Muster Rolls Inbox
Muster Roll Table Screen
S.No.
Data
MDMS Link
1
AttendanceHours
2
WageSeekerSkills
3
Sent Back to CBO
Based on the business workflow state set for Muster Roll ( Sent BAck for Correction) in respective environments, Add the corresponding code in Sent Back to CBO Code MDMS
On this page, the following actions need to be performed: If the muster roll is in workflow, User can only view the muster roll, If the muster roll is sent back to CBO,then user can edit the attendance and resubmit the muster roll,
If Muster Roll is in Workflow, The screen will only be a view page and Save as Draft and Re-Submit button will not be shown in the screen
Based on the Attendance Hours list, users will be allowed to mark the attendance as Full Day, Half Day, or absent. If the list is of length 2, users will be allowed to mark only Full and Absent, Else, users can mark halfday as well.
1
muster-roll/v1/_estimate
{
"musterRoll": {
"tenantId":,
"registerId":,
"startDate":,
"endDate":
}
}
To get the attendance log for the selected Date range
3
attendance/log/v1/_create
{"attendance": []}
To log the attendance of the individuals for the week
4
attendance/log/v1/_update
To update the attendance log of the individuals for Sent Back To CBO Muster Rolls
5
muster-roll/v1/_search
To check if any existing muster rolls present for the selected week
6
egov-workflow-v2/egov-wf/businessservice/_search
{
"tenantId":,
"businessServices": “musterRollId”,
}
To check the workflow status of the Muster Roll
S.No
Component
Path
Description
1
DigitTable
Custom Table with fixed first column and other columns scrollable
2
DropDownDialog
A dialog with dropdown options
3
DateRangePicker
A custom Date Range picker to select a range of the month / year
4
DigitElevatedButton
An Elevated Submit Button
6
WorkDetailsCard
Details Card based on DIGIT Figma design
7
DigitTimeLine
WorkFlow TimeLine component viewing Workflow state, And Assignees Details
TenantID
Module
pg
rainmaker-common
pg
rainmaker-muster
pg
rainmaker-common-masters
pg
rainmaker-workflow
pg.citya
rainmaker-pg.citya
Blocs :
Models :
Repositories:
Screens
Estimate Template feature frontend tech documentation
The Estimate Template feature helps in creating a template for particular work, so it can be directly taken refrence of or added by user in estimate creation. This feature has been incorporated in the estimate create screen where it can searched and added.
1
Estimate Template
Estimate Template is a part of mdms-v2 data, so In order to see the changes in the UI, both Estimate module and Workbench module has to be enabled in the file CityModule.json
1
/mdms-v2/v2/_create/WORKS.EstimateTemplate
9
MDMS_STATE_ADMIN
2
/mdms-v2/v2/_update/WORKS.EstimateTemplate
10
MDMS_STATE_ADMIN
1
Estimate Template
/workbench-ui/employee/workbench/mdms-search-v2?moduleName=WORKS&masterName=EstimateTemplate
dynamic:ContractIcon
MDMS_STATE_ADMIN
Sample object for a sidebar action defined in MDMS (containing navigationUrl )
od
rainmaker-common
od
rainmaker-estimate
od
rainmaker-workbench
Custom Components used for Estimate Template:
searchTemplate
This component is used to make a search for eatimate template already stored in the system and add the template for the creation of estimate
It handles the validation corresponding to adding of SORs and Non SORs in the estimate create.
Pass this component in the config of formcomp in order to render it in the create form
Measurement Book Tech Document
This module helps in taking the measurement, for an accepted contract
Roles: MB_CREATOR, MB_VERIFIER, MB_APPROVER,MB_VIEWER
This module has 5 associated screens :
Inbox
Create
Edit
Update
Search
This screen renders dynamically based on the user's role mapping. It contains two cards: Measurement Book and Work-order Book. These modules are displayed according to the roles assigned to the logged-in user. If the user has the role of MB Creator, the Work-order card will be visible. Similarly, if the user has the MB_VERIFIER, MB_APPROVER,MB_VIEWER role, the Measurement card will be visible. If the user has both roles, both cards will be displayed.
New Measurement Book creation:
Tap the "Create Measurement Book" button on any work order to generate a new measurement book.
Work Order Filter:
Users can filter the work order list by work order number, ward, and CBO name.
Work Order Sorting:
Users have the flexibility to sort the entire list based on the amount or CBO name.
Existing Measurement Book view/update:
Users can update/view measurement books by tapping on the Create Measurement Book button of any of the work orders.
Measurement Book Filter:
Users have the flexibility in the application to filter the work-order list based on the Measurement Number, projectId, ward and workflow state.
Measurement Book Sorting:
Users have been given the flexibility to sort the whole list based on the amount, SLA days remaining and workflow state.
To create the new Measurement Book, The user is required to go to the Work-order inbox screen by tapping the work-order card on the home screen. In that screen, multiple work orders assigned to him will be available in the list. He/she can tap on the work order to create a Measurement Book.
There are certain check points are expected to be validated before navigating to create a new Measurement Book screen from the work-order card.
This screen contains the below components:
SORs, NON-SORs cards for the current opened screen
The primary detail section contains the previous MB list and the brief description of the MB.
Workflow button
User can fill the measurement of the SORs and NON-SORs associated with Work-order. Image of the worksite can be uploaded by the Measurement book reader as to give proof of work done.
After filling the necessary details , user has been given two options such as Save-as-draft and submit.
if the user does save as draft he has the control to edit it as many time as he wants. once the form is submitted. then He can not edit the application in the same screen.
In order to update or edit the measurement book, the user has to navigate from home screen to measurement Book Inbox by tapping on the Measurement Book Card. In the MB Inbox Screen he/she can edit or update any measurement book by tapping the Open Measurement Book button.
In this screen use can take the actions:
Verify And Forward
Approve
Send Back
Reject
Edit
Blocs:
Models:
Repositories:
Screens:
UI Tech Documentation for UI Enhancements in Dashboard (DSS)
Sample config for the same is shown below:
There was a requirement in Mukta Dashboard to render pie charts in the following way. Refer the attached screenshot:
In the MasterDashboardConfig.json we defined a flag called variant for pieChart
In order to use this enhancement we need to use "variant":"pieChartv2"
This pie chart component was enhanced to show colored legends below, percentages in each pie and total number of applications in the center of the pie.
Sample config for the same is shown below:
There was a requirement in Mukta Dashboard to show KPIs in the form of horizontal bar charts. Refer the attached screenshot:
In MasterDashboardConfig.json we defined a boolean flag called “horizontalBarv2”
Set this flag to true if you want to show the chart in this way.
Counts of each bar are shown at the side of the bar, labels can be customized.
There was a requirement in the MUKTA Dashboard to show KPIs in a horizontal way. Refer to the sample screenshot below:
KPIs are shown in horizontal manner along with their description, aligned vertically to them.
In MasterDashboardConfig we defined a boolean flag “isHorizontalChart”. Set this to true to make use of this enhancement.
Icons are customizable and are defined in the MasterDashboardConfig itself.
Employee Role: STADMIN
Note::
Revision of Rates feature frontend tech documentation
The revision of Rates feature helps in revising the rates, if any changes in the SOR composition is done and the new works SOR rates has to be applied.
The feature has 2 associated screens :
Search SOR (Revision of Rates)
View Jobs
This feature has been integrated with Rate analysis module, hence Please follow the document on Rate Analysis to understand this part.
Sample object for a sidebar action defined in MDMS (containing navigationUrl )
Revision of Rates do not have any workflow, here Users can search works type of SOR and proceed with two options
Select few Works SORs and revise the rates for those by clicking on "Revise Rate For Selected"
Revise rates for all Works type of SORs by clicking on "Revise Rate For All"
Search SOR Screen:
Use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config which will run through InboxSearchComposer.
Refer to docs for Pre-Process config in Component comments.
SOR Type, SOR SubType and SOR Vairent Loaded in the search screen are MDMS data.
View Jobs Screen:
Use the common Utility “PreProcessMDMSConfig”.
Pass the associated dependencies for the config.
The utility will return a config which will run through InboxSearchComposer.
Refer to docs for Pre-Process config in Component comments.
Rate Analysis frontend tech document
The Rate analysis Module helps in creating rate analysis for Works type of SOR, and helps in bifurcating the rate and revision of rates.
The module has 5 associated screens :
Create Rate Analysis
View Rate Analysis
Edit Rate Analysis
Set module code as “RateAnalysis” in Module.js of Rate Analysis Module. Refer to the file
Enable Module in App.js. Update the object ‘enabledModules’. Use the code RateAnalysis. This code should match the code of the cityModule.json, mentioned above. Role-action Mapping
Sample object for a sidebar action defined in MDMS (containing navigationUrl )
There is no workflow associated with the Rate Analysis, Only create, view and update screens are present, once the Rate Analysis is created, Users can View and edit the composition.
Custom Components used in Rate Analysis:
SORDetailsTemplate - This Component is used to search the SOR and add it in the template but mentioning the quantity of each basic sors.
ExtraCharges - This Component is used to add the additional charges which is not present in the form of basic sors.
TableWithOutHead - This Component is used to show the total value of data with total LC and per unit cost.
RateCardWithRightButton - This Component is used to show the composition data with its rate value
RateAmountGroup - This Component is used to show the Existing rate and new rate for the particular works sor.
ExtraChargesViewTable - This Component is used to show the additional charges added during the creation of composition.
Create/ Edit Rate Analysis Screen:
Use the common Utility “useCustomAPIHook” to gather the data needed for validation and composition creation.
Use the common Utility “getDefaultValues” to gather the init state of the create form.
Pass the createState dependencies to the formComposer.
Refer to docs for Pre-Process config in Component comments.
Figures and additional details is captured in the screen.
View Rate Analysis Screen:
Use the common Utility “useViewRateAnalysisDetails” to gather the data to show from the calculate API of rate analysis.
Call the "viewRateAnalysisdataconfig" to render the view config for the rate analysis according to the dynamic data recieved
Pass the config in the "ViewComposer" to show the segregation of the data according to different heads of Rates.
UI Tech Documentation for JIT
JIT stands for Just in Time e-Payment. We are utilizing JIT in MUKTASOFT for payments.
Search Payment Instruction
View Payment Instruction
Create Payment Instruction (Temporary Screen)
Payment Instructions are created at the Backend when a bill gets approved. This is handled via cron jobs. We have kept a temporary flow for a user to create Payment for testing cases, or for when cron jobs are not running at Backend properly. In production this flow will be disabled.
To create Payment Instruction from UI. Navigate to Search Payment Instruction screen from home screen card and click on Create Payment Instruction. Search bill screen is opened, the user can select for which bills payment has to be created and click on Generate payment. A relevant toast message is displayed.
gate, login and go to the Home Page. Then click on Payment Instruction on Mukta Home page card
This screen is utilized to search payments. It has 2 tabs.
Pending For Action -> This tab will, by default, show all the payments that are either in FAILED or PARTIAL state
Open Search -> This screen can be utilized to search any payment
Mdms Configs for Search Screen ->
Payment Instruction type config ->
Payment Instruction Status config ->
Users can navigate to the view payment instruction screen from the search payment instruction screen. It shows detailed information about the payment, Beneficiary, and list of payment instructions associated.
Sometimes payment gets failed or partially successful. For these use cases we have two options which are as follows :
For FAILED payments : If a payment is in a failed state, an action button is shown on the view screen to take a retry action. Upon retrying, a new payment instruction gets generated and a toast message is displayed. Also the View screen is refreshed which now includes the newly created payment instruction in INITIATED state.
For PARTIAL payments : If a payment is in PARTIAL state. This basically means payment for at least one beneficiary was successful. In this case we have an option to generate a revised payment instruction which creates a new child payment instruction associated with the original payment instruction. Again, a success toast is displayed and the View screen gets refreshed with newly generated payment instruction. Newly generated payment instruction is now referred to as revised payment instruction.
INITIATED
APPROVED
FAILED
INPROCESS
SUCCESSFUL
PARTIAL
COMPLETED
Original
Revised
/wms/ifms-pi/_search -> for Searching PI's
/ifms/pi/v1/create -> For Retry and Partial action
Sample Curl's:
Roles related to Bill accountant are used here:
All the Inbox and Search screens throughout the app are rendered using this component .
Mdms config ->
Mdms config ->
1
SOR Type
2
SOR SubType
3
SOR Varient
1
/rate-analysis/v1/scheduler/_create
464
MDMS_CITY_ADMIN
2
/rate-analysis/v1/scheduler/_search
465
MDMS_CITY_ADMIN
1
Revision of Rates
/employee/rateAnalysis/search-sor
dynamic:ContractIcon
MDMS_CITY_ADMIN
1
Revision of Rates
2
View Jobs
pg
rainmaker-common
pg
rainmaker-rateanalysis
pg
rainmaker-common-masters
1
/mdms-v2/v2/_create/WORKS-SOR.Composition
9
MDMS_STATE_ADMIN
2
/mdms-v2/v2/_update/WORKS-SOR.Composition
10
MDMS_STATE_ADMIN
3
/rate-analysis/v1/_calculate
11
ESTIMATE_CREATOR, MDMS_STATE_ADMIN
1
Rate Analysis
/workbench-ui/employee/workbench/mdms-search-v2?moduleName=WORKS-SOR&masterName=Composition
dynamic:=ContractIcon
MDMS_STATE_ADMIN, MDMS_CITY_VIEW_ADMIN
1
Create Rate Analysis
2
View Rate Analysis
od
rainmaker-common
od
rainmaker-rateanalysis
od
rainmaker-common-masters
Bill Accountant
BILL_ACCOUNTANT
Search PI Screen, View PI Screen, Retry and Generate Revised PI Access
Bill Creator
BILL_CREATOR
Search PI Screen, View PI Screen, Retry and Generate Revised PI Access
1
If the existing MB for the selected work-order is in workflow state
NO
2
Time Extension is in progress
NO
3
Revision Estimate is in progress
NO
4
Above points are approved in state
YES
1
{
}
Gives the list of measurements related to the contract Number
2
Gives the estimate details for the estimate Number
1
{"roles":""
"isActive":""
"tenantId":""}
Fetches the HRMS employees
2
Create new measurement
1
{
}
fetching the measurement book details
2
updating the current measurement book
3
egov-workflow-v2/egov-wf/process/_search
{"history":"",
"tenantId":"",
"businessIds":""
}
fetches the workflow for the curent measurement book
1
Common MB Card
Custom card with key value data binding
2
Multi line Items
custom component contains the digit card component with multi-line calculation functionalities
3
Floating Action Card
this component contains the floating action button with showModalBottomSheet functions
4
DropDownDialog
A dialog with dropdown options
5
DigitElevatedButton
An Elevated Submit Button
1
SOR Data
2
Overheads