URL- digit-ui/employee/hrms/create
Logged User can able to Create Employee by providing necessary Details
If a user enters a mobile number that already exists in the system - Then the application will give an error message.
The Boundary is auto-filled with current TenantId
. The user is able to add Multiple Jurisdictions and Assignments.
SL No
API
ROLE
Access Id
1
/egov-hrms/employees/_create
HRMS_ADMIN
1750
2
/egov-hrms/employees/_search
HRMS_ADMIN
1752
Primary Files
URL- digit-ui/employee/hrms/edit/{Employee Id}
Logged User can able to Edit Employee Details. Employee Id is disabled.
SL No
API
Role
Access Id
1.
/egov-hrms/employees/_update
HRMS_ADMIN
1751
Primary Files
The objective of HRMS is to provide a service that manages all the employees enrolled in the system. HRMS provides extensive APIs to create, update and search the employees with attributes like assignments, service history, jurisdiction, etc. HRMS can be treated as a sub-set of the egov-user service. Every employee created through HRMS is added as a user in the egov-user.
Before you proceed with the documentation, make sure the following pre-requisites are met -
Java 8
Kafka server is up and running
egov-persister service is running and has Hrms service persister config path added in it
PSQL server is running and a database is created to store employee data.
This service provides a feature to create, update and search the employee in the system.
It provides a feature to add various roles to an employee under multiple jurisdictions.
It provides a feature to deactivate and reactivate an employee.
It records the employee details like assignment details, jurisdiction details, and personal details.
Following are the properties in the application.properties file in HRMS service which is configurable.
Following are the list of masters required for HRMS:
Department
Designation -
Degree -
Employee Status -
Employee Type -
Reason For Deactivation or Reactivation -
Departmental Tests -
Specialisation -
Create messages to be sent on employee creation./ reactivation
Details of all the entities involved:
Assignments: Every employee is assigned a list of assignments, every assignment is a designation provided to that employee for a given period of time. These designations are mapped to departments. This also includes marking the employee as HOD for that department if needed. An employee can also provide information on who does he report to.
Constraints:
For a given period of time, an employee shouldn't have more than one assignment.
The department and designation part of the employee must be configured in the system.
Details of assignments once entered into the system cannot be deleted.
An employee cannot have more than one active assignment.
Jurisdictions: A jurisdiction is an area of power for any employee. It can be a zone, ward, block, city, state, or country. Currently, jurisdiction is defined as a combination of Hierarchy type, Boundary Type, and the actual Boundary. However, in the current system, we are not validating these jurisdictions. This is being collected only for the sake of data.
Constraints:
The details pertaining to a jurisdiction like Hierarchy, Boundary Type, and Boundary must be configured in the system.
An employee can have more than one jurisdiction.
Currently in the system jurisdiction is limited to within a ULB.
Service History: Service history is the record of an employee's professional experience. It captures information about the location and period of work with the necessary order number. Information about the current work details is to be entered here.
Constraints:
There's no rule on period, dates of different services can overlap.
There's no cap on the number of entries in the service history.
Captured as legacy data.
Educational Details: Captures educational details of the employee. Captures information like Degree, Year of Passing, University, Specialization, etc as part of the educational details.
Constraints:
Details pertaining to educational details like Degree, Specialization must be configured.
Departmental Tests: Captures details of the tests undertaken by the employee. Like the name of the test and year of passing.
Constraints:
Test details must be configured in the system.
Deactivation Details: Details of deactivation of the employee, which captures the reason for deactivation, period of deactivation, and other necessary details.
Constraints:
Deactivation details are compulsory while deactivating an employee.
Reactivation Details: Details of reactivation of the employee, which captures the reason for reactivation, the effective date from when reactivation takes place, and other necessary details.
Constraints:
Reactivation details are compulsory while reactivating an employee.
Uniqueness Constraints:
Employee code has to be unique and will be used as a username for login.
The phone number has to be unique, which means no 2 employees can have the same phone number.
Notification:
Notification is sent to the phone number of the employee who has been created in the system. This is an SMS notification.
Add MDMS configs required for HRMS Service and restart MDMS service.
Deploy the latest version of egov-hrms Service.
Add HRMS Service persister yaml path in persister configuration and restart persister service
Add Role-Action mapping for APIs.
The egov-hrms service is used to manage all the employees enrolled in the system. It is used to assign roles under multiple jurisdictions.
Can create an employee with a specific role to assign it a particular module.
Can add any role to an employee across multiple jurisdictions.
Provide a feature to deactivate and reactivate an employee.
To integrate, the host of egov-hrms-services module should be overwritten in the helm chart.
egov-hrms/employees/_create
should be added as the create endpoint for creating employees in the system
egov-hrms/employees/_search
should be added as the search endpoint. This method handles all requests to search existing employee records depending on different search criteria
egov-hrms/employees/_update
should be added as the update endpoint. This method is used to update employee details.
egov-hrms/employees/_count
should be added as count API to get a list of active and inactive employees present in the system.
(Note: All the API’s are in the same postman collection therefore the same link is added in each row)
Logged in users can activate or deactivate employees as required.
If Employee status is Active. Users can Deactivate Employee by clicking on the Take Action button placed on Employee Detail Screen.
On the click of Deactivate Employee button, a PopUp appears where users should provide necessary details such as
Mandatory
Reason for Deactivation
Effective Date
Optional
Order No.
Supported Documents (File Upload)
Remarks
On Deactivation User will be navigated to the Acknowledgement screen
If employee status is inactive, users can reactivate employees by clicking on the Take Action button placed on Employee Detail Screen.
On the click of Deactivate Employee button, a popup appears where users should provide necessary details such as
Mandatory
Reason for Reactivation
Effective Date
Optional
Order No.
Supported Documents (File Upload)
Remarks
On reactivation, users are routed to the Acknowledgement screen
SL No
API
Details
1
/egov-hrms/employees/_update
1 let documents = { 2 referenceType: "ACTIVATION", 3 documentId: uploadedFile, 4 documentName: file.name, 5 }; 6 applicationData.Employees[0]["documents"].push(documents); 7 } 8 9 Employees[0]["reactivationDetails"].push(data); 10 Employees[0].isActive = true;
2
/egov-hrms/employees/_update
1 let documents = { 2 referenceType: "DEACTIVATION", 3 documentId: uploadedFile, 4 documentName: file.name, 5 }; 6 applicationData.Employees[0]["documents"].push(documents); 7 } 8 Employees[0]["deactivationDetails"].push(data); 9 Employees[0].isActive = false; 10 history.push("/digit-ui/employee/hrms/response", { Employees, key: "UPDATE", action: "DEACTIVATION" });
Primary Files
Secondary Files
Admin Can able see the Total Count of Employee's
Active Employee Count
Total Employee Count
API -EndPoint
/egov-hrms/employees/_count
SL NO
API URL
ROLES
ACTION ID
1.
/egov-hrms/employees/_count
HRMS_ADMIN
2143
URL - digit-ui/employee/hrms/inbox
Admin can able to search Employee bases on multiple Filters and search Parameters
Filter By
ULB
Department
Status
Search
Name
Employee ID
Mobile Number
Has a pagination feature
On Hover of Roles Count
Logged User can able see the detail assigned roles
On click upon Employee Id Logged User are routed to Employee Detail screen
SL.No
API
Paramaters
Role
Access ID
1
egov-hrms/employees/_search?
tendantId
limit
orderby
offset
{Filter Params}
{Search Params}
HRMS_ADMIN
1752
Primary Files
Secondary Files
URL- digit-ui/employee/hrms/details/{Employee Id}
Logged User should able to see details of Employee
Employment Status
Personal Details
Employee Details
Jurisdiction Details
Assignment Details
Supported Documents
If User has uploaded any Documents against Employment Status. Those Documents should be one click Downloadable
API details
SL No
API
Role
Access ID
1
/egov-hrms/employees/_search
HRMS_ADMIN
1752
Primary Files
Roles -
Boundary -
Property
Value
Remarks
egov.hrms.employee.app.link
This is the link to the mseva app, which differs based on the environment.
egov.hrms.default.pagination.limit
200
This is the pagination limit on search results of employee search, it can be set to any numeric value without decimals.
egov.hrms.default.pwd.length
10
This is the length of password to be generated at the time of employee creation. However, please ensure this is in sync with the egov-user pwd policy.
open.search.enabled.roles
SUPERUSER,ADMIN
This is a list of Role codes that are allowed to perform an open-search in hrms.
kafka.topics.notification.sms
egov.core.notification.sms
Kafka Topic to push the sms request. Please ensure this is in sync with egov-notification-sms service.
kafka.topics.save.service
save-hrms-employee
Kafka topic to push the save request in hrms. Please ensure this in sync with the persister.
kafka.topics.update.service
update-hrms-employee
Kafka topic to push the update request in hrms. Please ensure this in sync with the persister.
egov.idgen.ack.name
hrms.employeecode
Key to be configured in Idgen alongwith the ID format to generate employee code.
egov.idgen.ack.format
EMP-[city]-[SEQ_EG_HRMS_EMP_CODE]
Format to be configured in ID gen to generate employee code.
Title
Link
API Swagger Documentation
Link
egov-hrms/employees/_create
egov-hrms/employees/_update
egov-hrms/employees/_search
egov-hrms/employees/_count