- This is a REST API for a Bus reservation system portal. This API performs all the fundamental CRUD operations of any Bus reservation platform with user and admin validation at every step.
- Build by a team of 5 members in 5 days.
- Java
- Spring Framework
- Spring Boot
- Spring Data JPA
- Hibernate
- MySQL
- Admin Module
- User Module
- Login Module
- Route Module
- Bus Module
- Reservation Module
- Feedback Module
Following ER diagram indicates the database tables and thier interaction which we are using.
- User and Admin authentication & validation with session uuid having.
- Admin Features:
- Administrator Role of the entire application
- Only registered admins with valid session token can add/update/delete route or customer from main database
- Admin can access the details of different users, buses and routes.
- User Features:
- Registering themselves with application, and logging in to get the valid session token.
- Viewing list of available bus and booking a reservatioon.
- Only logged in users can update his/her reservation, profile updation and other features.
[Team member : Shaili Srivastava] https://github.com/Shaili-Srivastava
[Team member : Samson Seemal] https://github.com/SamsonSeemal
[Team member : Saurabh Patel] https://github.com/Saurabhpatel0894
[Team member : Abhinav Singh] https://github.com/abhinav110695
[Team Lead : Owaiss Hassan Bhat] https://github.com/owaisshassan
- Before running the API server, you should update the database config inside the application.properties file.
- Update the port number, username and password as per your local database config.
server.port=8888
spring.datasource.url=jdbc:mysql://localhost:8888/brpDB;
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=root
POST /login
: Logging in user with valid mobile number & passwordPOST /logout
: Logging out user based on session tokenPOST /brsp/user
: To register user himselfPOST /feedback/userId/busId
: To give feedback by user based on userId and busIdGET /bus/busId
: Getting the details of the bus by its idGET /buses
: Getting All the busesGET /busByType/busType
: Getting details of bus by its typeGET /reservation/userId
: To do reservation by user by his/her idGET /reservation/reservationId
: Getting the reservation details by reservation idPUT /reservation/userId
: Update reservation details by user idPUT /brsp/user
: Update user details by himselfPUT /feedback
: To update feedback given by user.DELETE /reservation/userId/reservationId
: Cancel reservation by reservationId, userId
https://github.com/owaisshassan/golden-oven-671/blob/main/Images/BRSP.txt