Online Restaurant Food Ordering & Management System Python Project

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:

  • Customers
  • Restaurant Managers
  • Restaurant Branch Managers
  • Deliveryman

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.

Project Features

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

User Guide

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

Restaurant Homepage

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.

Customer Registration

After entering the location, the customer will be able to browse the website as before but cannot order until login/register is done.

View Restaurants

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.

Browse Cuisines

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.

Branch Unavailability

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.

Payment method

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

Manager Register

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.

Add Items

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.

Manager Dashboard

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.

Add offer

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.

Deliveryman Register

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.

Deliveryman Homepage

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.

Previous Deliveries

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

Frontend

HTML, CSS, Bootstrap
Javascript, Angular JS, JQuery, Google Maps API

Backend – Django

Database – Postgresql v10.2

Specifications:

  • Web Framework: Django 2.2
  • Database Server: PostgreSQL 12.3

Visit Here and download the complete Online Restaurant Food Ordering & Management System Python Project

Women Security Band – Smart and Handy Security Device for Women Project

Objective :

  • To design and develop a smart and handy security device for Women.
  • To alert people in its vicinity and relatives of the victim about the attack and also get help from emergency services.
  • To track the user using google maps under crucial situations.
  • The module developed should be capable to work automatically under crucial situations.

Introduction :

Women Security device is a device that will help women to walk freely in the streets anywhere and at any time. The goal of the women’s security device is to protect women from getting molested in different ways like rape, sexual harassment, abuse, etc. There are existing apps or devices to provide security to women but there are drawbacks to these existing apps or devices. So to overcome such drawbacks and provide security in an enhanced way we are going to propose the women’s security device.

Technical Details :

Following modules/sensors to detect the crucial situation:

1. Pulse rate sensor:

Pulse rate will be the major parameter for the security device because
whenever the person is in danger person’s heartbeat gets increased. So using this parameter we can consider that person can be in danger.

2. Temperature sensor:

This is the second parameter that can be considered when the person is in
danger its temperature starts decreasing so this can be considered as one of the parameters to detect that the person is in danger.

3. Motion sensor:

This is the third parameter we can consider as when the person is in danger due to
fear or anxiety person’s body starts shaking or shivering. So this can be considered as another parameter to send alarm message or call to relatives.

4. Voice Recognition.

We will be using this parameter as well to detect dangerous situations. We will be recording the “HELP” word and when the person shouts when is in danger then by detecting and comparing it with the already recorded word and if it crosses a certain limit of intensity range then we can consider it as a dangerous situation to send alarm message or call to the relatives of the person.

Using the above sensors will provide input to our device
Also to track the user and send emergency messages to listed
contacts and to the nearest police station two modules are used

Problem Statement

To develop an easy-to-carry system that will work automatically without any manual inputs to provide security for women.
Importance of the project.

The expected outcome of the project

A wearable security device that will be user-friendly and feature train the device according to different users. Module to add and remove authorized people for sending alerts to them. Location will be considered while sending alerts.

Functional Requirements:

The user of the Bracelet:-

1. System would Identify the critical situation and normal situation automatically.
2. System would get emergency help automatically when the victim is under attack.
3. System would Blink the LED for 10 secs when a critical situation is detected.
4. Track the nearby victim/friend/relative in an emergency using Google Maps.
5. System would alert the vicinity people.
6. System would get emergency help when the SOS button is pressed manually.
7. Add the contact numbers of friends/relatives on the application to ask help for in an emergency.
8. Login with the already provided unique number using the mobile application.
9. Save the button on the System to write those numbers into GSM.
10. Reset button on the System to reset all previously saved numbers into GSM.

Other than the victim/ User of the Bracelet:-

1.Log in with a verified mobile number.

2. Track the nearby victim/friend/relative in an emergency using Google Maps.

External Interface Specifications:

1. User Interface:-

The user of the Band:-

1. Login.
2. Add the contact numbers of friends/relatives.
3. Tracking the victim using Google Maps.

Other than victim/ User of the Band:-

1. Login.
2. Tracking the victim using Google Maps.

2. Database:-

Firebase Cloud will be used for real-time database storage.

3. Google Maps API will be used for tracking the user.

Technical Specification: There will be one android app and a smart band.

Languages & Technologies:

Languages: C, C++, JAVA, Firebase database
IDE: Arduino, Android Studio

Nearby Hotels Python Web Application

This is a simple web application that can be used to search hotels. This application will help in searching nearby hotels and also give weather reports of that place such that they can know the weather details priorly to near that hotel in order to travel. A currency converter is included with which everyone can view hotel prices in their desired currency. Additionally, discount coupons are included, which will help user to access the cheapest hotels nearby.

API’s to be used:

Google maps:

The google maps API fetches the data from google e.g. here Maps API is a server that returns information about a place, an establishment, a geographical location, or a prominent point of interest using an HTTP request. Methods are available for place search, details, and autocomplete queries.

The place API returns in JSON format.

Currency converter:

Planning to use online currency converter API web services. This API allows covering the currency to whatever the users needed.

This API returns data in XML format.

Weather API:

This API forecast the weather near the hotels, which uses information from the Rapid API: this API has all the information like temperature, humidity, wind, etc..

This API returns data in JSON format.

Discount coupon:

Planning develops discount coupon API, which gives what best hotels are available nearby with the best discounts possible.

This API returns data in XML format.

Technologies used:

  • JavaScript
  • HTML
  • CSS
  • Nodejs
  • Python