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
S.No.
Data
MDMS Link
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 with the code of the cityModule.json, mentioned above.
S.No
API
Action ID
Roles
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
S.No
Screen
Navigation URL
LeftIcon Updates
Roles
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
S.No
Screen
Configuration
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
TenantID
Module
pg
rainmaker-contracts
pg
rainmaker-common-masters
pg
rainmaker-common
pg
rainmaker-workflow
pg.citya
rainmaker-pg.citya
UI Component Name
Business Service
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 this OverHeads config for Amount calculation.
Role of CBO will be shown based on the calculated Work Order Amount. If the calculated Work Order Amount is less than ‘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 description in the table. Users can add and delete the rows. First row won't be deleted, clicking on the delete button will empty the first row. Refer Component - WOTermsAndConditions.
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.
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 docs for Pre-Process config in Component comments.