We have created REST API for Online Cab Booking Application which can be used by Customers and Drivers to login into their profile, update their details and Book Cabs with option to select cab type and the cab or driver availability.
All this is over looked by the Admin who can access the data in the application.
We have implemented data and user validation at every step, for every user.
It has all the basic facilities that are required by an end user to have a convenient and hassle free Online Cab Booking Experience.
- Java Core
- Spring Data JPA
- Spring web
- Validation
- Spring Boot
- Hibernate
- MySQL
- Swagger UI
- Lombok
- Postman
This Java based REST API project have featurs like Register, Login, Logout, Update, Booking, canceling or deleting, giving rating Some features describes bellow according to their role .
- Admin can register himself.
- For doing next admin tasks with database admin should login himself".
- Assigning any available cab to any driver.
- Can see all tripdetails of a Customer.
- Managing everytrip by cabwise means which cab are booked more.
- Getting data about how many trips are booked per day or for a period of day.
- Update own details and also logout and delete own data.
- Customer can register himself.
- For booking any cab or trip he/she should login first".
- Booktrip / A cab.
- Cancel a trip / delete a trip data.
- Viweing own travel history.
- Can rate drive based on trip exxperience.
- Can find bestDriver available by rating.
- Fetching Invoice for total travel details/spends on trip.
- Updating own tripdetails before a timeperiod.
- Logout, update details, delete account.
- Driver can register himself.
- Mantaining how many trips have been made by him/her.
- updating own data.
- registering own car and type.
- You can clone this repo and start the serve on localhost
- Before running the API server, we 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:3306/FlyWheeldb
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=**mysql username**
spring.datasource.password=**mysql password**
spring.jpa.hibernate.git ddl-auto=update
https://localhost:8888/
http://localhost:8888/swagger-ui/
- Customer to tripdetails have One-To-Many and Tripdetails to Customer have Many-To-One relations.
- Tripdetails to Driver have Many-To-One and Driver to Tripdetails have One-To-Many relations.
- Cab to Driver and Driver to Cab have One-To-One relation.
-Provides login and logout functionality