Online Restaurant Food Ordering & Management System works as a restaurant hub where people can browse and order food online easily. Nowadays, many people especially the young generation, often want to order food from restaurants online with a home delivery service. Thus, we built a restaurant management system where all the restaurant’s information and services will be available. We also offer deliverymen will deliver the food as well, in case a restaurant does not have delivery support.
Users of the Project
This Online Restaurant Food Ordering & Management System has four (4) kinds of users. They are:
- Restaurant Managers
- Restaurant Branch Managers
Apart from the users, there is a superuser named admin. Anyone can connect to the system as a customer, restaurant manager, or deliveryman. admin will verify the Trade Licence No. and many other details of a restaurant before connecting it to the system. Similarly, a deliveryman will also get checked by the admin about whether s/he is capable enough to work as a deliveryman.
Many features are implemented in the project. Among these, the key features of our project are as follows.
- Dashboard for the restaurant managers
- Search and filter food items
- Our delivery module
- Bi-directional rating system between deliveryman and customer
- Offers and Discounts
- Rating and review submission system
This is a sample user guide that will work as a walk-through of the major functionalities of the Online Restaurant Food Ordering & Management System website. As mentioned above, there are 4 kinds of users in this system. A user guide is provided for each kind of user below.
Customer User Guide
Most of the users of the website will be in this category. Initially, a customer will be able to browse through the website even without a login. Thus, every time a customer enters the website, the customer home page will be loaded.
Customer Location Prompt
But when the customer will try to order something from the website, a location prompt will appear.
After entering the location, the customer will be able to browse the website as before but cannot order until login/register is done.
While browsing the items, a customer can filter the items via many different search categories. Among these, on the Restaurants page, a user will be able to see only the restaurants that are close to him/her.
Also, on the Browse Cuisines page, a user can browse items based on many filters and search options. For example, a user can filter the items based on ratings on the items, price range, etc.
Depending on the location, restaurant branch availability will be determined and some of the restaurants may not be able to deliver to the intended location of the customer.
Adding food to cart and Checkout
After browsing, customers can order from a nearby restaurant, check out the cart, and then the customer will be taken to the checkout page where delivery details will be asked for.
Customers can use either cash on delivery or an online payment method.
Order Placing notification
At this point, an order has been placed. Now it will be approved by the restaurant manager. Usually, the manager approves the order within a short time. By this time a notification will appear stating that the order has been placed and sent to the restaurant authority.
Rate the Deliveryman
By this time the customer can browse through the website and wait. As the order information keeps getting propagated, the customer will be getting notifications for his order. Once the deliveryman arrives with the order, the customer will be able to rate the deliveryman for the service on the homepage.
Rate and Comment Items
Also, a customer can rate a particular item of a restaurant by clicking on View Item in that item while browsing. S/he can also provide feedback as a comment.
Restaurant Manager User Guide
A restaurant manager will need to open up an account as a restaurant manager on the website. The registration form will look like this. When the admin approves the request, an email is sent stating the activation of the account.
Restaurant Manager Homepage
On the restaurant manager’s homepage, there will be a key to identify the restaurant. This key will be used for opening up the restaurant branches.
Restaurant Branch Creation
Opening up a restaurant branch is just the same as opening up a new restaurant. On the restaurant register page, there is also an option to create a restaurant branch. Providing all the relevant fields along with the restaurant key from the restaurant manager homepage (mentioned above), a new branch of the restaurant can be created.
A restaurant manager can add items to his restaurant. In the Add Item tab, the manager will be able to introduce a new item in the restaurant.
Also, a manager can see the restaurant statistics on the Dashboard page. The Dashboard page contains many of the common statistics which will help him understand the restaurant sales progress. Outlet revenue, sales trends in different branches, etc. are shown on this page.
Restaurant Branch Manager
A restaurant branch manager will be in charge of a branch of a restaurant. So, his role on this website is also different from a Restaurant Manager. When the restaurant manager sets up the profile for the branch manager, she/he can manage this branch independently.
Item Availability in the branch
The Branch Manager can declare which items are currently available on the homepage.
The Branch Manager can add offers on an item by clicking on that item.
Manage and Accept Orders
This is the most important task of a branch manager. Whenever a customer orders something, the order request comes to the branch manager who has to accept it and forward it to the deliveryman.
Deliveryman User Guide
In our system, anyone can become a deliveryman if s/he is willing to be. Anyone can open up a profile on the website as a deliveryman, but it will need approval from the admin.
While opening an account, the delivery man has to assign himself/herself to one of the zones. S/he will be getting deliveries for that zone only.
Once logged in, a deliveryman’s homepage will have currently pending requests of orders in his/her zone. To take an order for delivery, the Take Delivery button is to be pressed.
Complete the Delivery Process
Then, that order entry will be updated and will be waiting for the delivery man to pick up and deliver. Once delivered to the customer, the deliveryman needs to press the Mark As Delivered button. This will also prompt the deliveryman to rate the customer for his/her behavior.
For a deliveryman who has been on the website and delivered many orders, s/he can check all his/her past deliveries in the Delivered Order.
Tools and Frameworks
HTML, CSS, Bootstrap
Backend – Django
Database – Postgresql v10.2
- Web Framework: Django 2.2
- Database Server: PostgreSQL 12.3
Visit Here and download the complete Online Restaurant Food Ordering & Management System Python Project