We are creating a Leave Application Processing System using JAVA Spring Boot Framework. Boilerplate files Generated By Intellij Idea. Use Maven as Dependency manager
@Preethi Venkiitu @Chen Yu @Liu Bao @Yu Zeijing @PriyadharshiniMuthamilselvan
Admin :
Username : [email protected]
password : password123
Employee :
Username : [email protected]
Password : password123
Manager :
Username : [email protected]
Password : password123
-Login: Single entry point for all users. Password-protected access. User authentication with user ids and passwords stored in the database.
-Supported Leave Types Annual, Medical, and Compensation leave.
-Employees can submit, update, or delete leave applications.
-Validation of leave details.
-Different statuses: Applied, Updated, Deleted, Approved, Cancelled.
-Conditions checked for leave application.
-View Personal Leave History and View Leave Application: Employees can view their leave history and individual leave details.
-View Leave Application for Approval and Subordinate Leave History: Managers can view and act on leave applications submitted by subordinates. Managers can view complete leave history of subordinates.
-Administration:
Admins can create, modify, and delete employees. Role assignment and modification for employees. Maintain leave types, public holidays, and employee annual leave entitlements.
-REST Controller and REST Repository: Implement RESTful services for data exchange
-ReactJS Implementation
_ThymeLeaf Implementation
REST Controller
Admin Controller
- /api/admin
- /api/admin/users
- /api/admin/{id}
- /api/users/Manager/{id}
- /api/admin/users
Leave Application Controller
- /api/applications
- /api/applications/applied
- /api/applications/applied_list/{id}
- /api/applications/approve/{id}
- /api/applications/reject/{id}
- /api/applications/comment/{id}
- /api/applications/get/{id}
- /api/applications/findemployee/{id}
- /api/applications/update
- /api/applications/cancel/{id}
- /api/applications/delete/{id}
- /api/applications/submit/{id}
- /api/applications/query/{id}
User Controller
- /api/users
- /api/users/login
- /api/users/check-auth
- /api/users/logout
- /api/users/register
LeaveEntitlement Controller
1./api/leave-entitlement 2.api/leave-entitlement/get/{userId}
Controller LeaveType Controller
1./leavetype/list 2./leavetype/editDetails/{id}
Public Holiday Controller
1./publicholidays/list 2./publicholidays/create 3./publicholidays/edit/{id} 4./publicholidays/delete/{id}
Role Controller
- /admin/role/list
This guide provides step-by-step instructions on how to run the Java application on your system. Follow these steps to ensure a smooth setup and execution.
Before proceeding, ensure you have the following installed:
- Java (JDK)
- MySQL Server
First, you need to configure the database connection in the application.properties
file. Follow these steps:
- Open the
application.properties
file located in thesrc/main/resources
directory. - Locate the following properties: spring.datasource.username= spring.datasource.password=
- Replace the above lines with your MySQL username and password. For example: spring.datasource.username=root spring.datasource.password=myPassword
- Ensure the
spring.datasource.url
property matches your local MySQL setup: spring.datasource.url=jdbc:mysql://localhost:3306/SA spring.datasource.url=jdbc:mysql://localhost:3306/SA ./mvnw spring-boot:run Or, if you are using Windows: mvnw spring-boot:run
The application should now start and be accessible. Ensure that the database server is running and accessible for the application to connect to.
If you encounter any issues, check the following:
- Ensure that MySQL server is running.
- Verify that the database username and password in
application.properties
are correct. - Confirm that the
spring.datasource.url
inapplication.properties
correctly points to your MySQL database.