A Leave Management System
This is a self-developed project using SpringBoot, Hibernate and Data JPA. It enables employees to submit leave requests, track their status, and manages approval workflows. With all the CRUD operations via RESTful APIs, it offers seamless data manipulation. Liquibase ensures smooth database updates.
There are two tables currently supporting the system, which are -
-
employee_info
- To store the basic employee details and associated manager information. -
leave_history
- To store the applied and approved leave status
GET http://localhost:8080/api/v1/employee-leave-info/201
To get the details of all the leaves by the Employee's ID.
GET http://localhost:8080/api/v1/employee-by-manager/govind@tempmail.com
To get list of all employees, as well as the leaves taken by them per manager. This will help the managers in fetching a cumulative list of employee-leave data.
POST http://localhost:8080/api/v1/add-employee-info
This is to ease the employee addition process to the DB.
POST http://localhost:8080/api/v1/apply-leave
Employees can easily apply leaves using this API.
PUT http://localhost:8080/api/v1/approve-leave/36
Managers can easily approve employee leaves by providing the leave id.
GET http://localhost:8080/api/v1/leave-status/36
This gives the details of the leave inclusive of the leave type, number of days on leave, start and end date.
DELETE http://localhost:8080/api/v1/delete-leave/29
This will delete the leave by leave id.