Information regarding sign-off modules and features for User Management (HRMS) and Offline reports for HCM is mentioned below:
https://digit-discuss.atlassian.net/browse/HLM-1756 - UM: Creating a new user account through a UI https://digit-discuss.atlassian.net/browse/HLM-1759 - UM: UI to search users in the system https://digit-discuss.atlassian.net/browse/HLM-1757 - UM: UI to update user details https://digit-discuss.atlassian.net/browse/HLM-1758 - UM: UI to delete user from the system https://digit-discuss.atlassian.net/browse/HLM-2742 - Offline reports in mobile app for Inventory Management
UI Test cases executed: Click here for details.
Total Test cases executed - 89
Total passing test cases - 89
Total failing test cases - 0
The objective of User Management in DIGIT HRMS service is to provide a service that manages all the employees enrolled in the system. HRMS provides extensive APIs to create, update, and search 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 will also be created as a user in 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.
Dependency services should be up and running:
egov-user - Source code
egov-notification-mail - Source code
user-otp - Source code
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 such as assignment details, jurisdiction details, and personal details.
The source code for User Management (egov-hrms) is present in the digit-dev Git repo. The spring boot application needs the Lombok* extension added to the IDE to load it. Once the application is up and running, the API requests can be posted to the URL and the IDs can be generated.
*In the case of IntelliJ, the plugin can be installed directly. For eclipse, the Lombok jar location has to be added in the eclipse.ini file in this format javaagent:lombok.jar.
Following are the properties in the application.properties file in the HRMS service, which is configurable:
Property
Value
Remarks
egov.hrms.employee.app.link
https://health-dev.digit.org/employee/user/login
This is the link to the heath web 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.
egov.hrms.auto.generate.password
false
Password can be set while creating the user. Use false when random password generation is not required.
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.
EmployeeDepartment.json
Degree
Employee Status
Employee Type
Reason For Deactivation or Reactivation
Roles
Boundary
Refer to the Swagger API for YAML file details: UserManagement.yaml
Postman collection