Restaurant Management System is a Web-Based Project built with Java 11, Spring Boot 2.7, PostgresSQL. Javeats provides a powerful foundation for managing the various aspects of restaurant operations. It includes functionalities such as inventory management, menu creation and modification, order processing, table reservations, customer management, staff scheduling, and financial transactions. Leveraging the robustness and scalability of Java Spring Boot, the backend ensures efficient performance and seamless integration with other systems. With its modular architecture, the backend can be easily extended and customized to suit the specific needs of different types and sizes of restaurants. Overall, the backend system aims to optimize operational efficiency, enhance customer service, and streamline business processes for restaurant owners and staff.
- Built with
- Spring Boot 2.7
- PostgresSQL
- Prerequisites
- Dev run
mvn clean package -DskipTests=True
- Start local Database, create local postgres container
docker compose up -d db
- SWAGGER USAGE
- Hit swagger URL in browser. Swagger
Mind Map fo the features, use-cases, Api Endpoints, and Database Tables.
- Cart Management
- add, modify, and view Cart
- remove item or clear cart
- User Registration and Authentication
- Sign up, login, logout, and roles
- Jwt Authentication
- Restaurant Management
- register, update, enable/disable restaurant
- add, update, delete, enable/disable menu
- search restaurant, menu-Items, and rating
- Order Management
- place and cancel order by customer or restaurant
- order details, and restaurant orders summary
- Payment Management
- create, view payment and integration With 3rd Party
- view Payment Transactions
- generate Transaction Receipt
I performed the query optimization on Hibernate queries using show-sql=true
property.
You can mock the tests by add 10 million records in database using
this file.
we mocked the Task Estimation to make it better for each developer working on the system. Here is examples of it: