Skip to content

ivyyy0601/Online-Restaurant-Ordering-System

Repository files navigation

🍽️ Online Restaurant Management System

A full-stack web application designed to streamline restaurant ordering for customers and improve operational efficiency for staff.

📌 Overview

The Online Restaurant Management System provides a user-friendly platform for ordering food, managing customers, tables, food items, and staff operations. It addresses issues commonly found in restaurant websites such as unclear navigation and incomplete information.

✨ Key Features

👤 Customer Functions

  • Register, Login, Logout
  • Browse restaurant info and food categories
  • Search food by name
  • View food details
  • Add/delete items in cart
  • Choose dine-in or takeaway
  • Provide feedback
  • Manage personal information

👨‍🍳 Staff Functions

  • Login, Logout
  • Update personal profile
  • Manage tables
  • Search/update customers
  • Add/edit/delete food items
  • View/delete orders
  • Update order status

🛒 Order Processing

  • Dine-in / takeaway workflow
  • Table booking validation
  • Stock updates
  • VIP discount
  • Staff updates order states
  • Prevent purchase when stock = 0

👀 Visitor

  • Browse homepage
  • Search food
  • Must log in to buy

🧱 System Architecture

Includes entities: customer, staff, cart, orders, food, food category, address, desk, feedback and relationship sets.

🗃️ Database Design

Key Assumptions

  • 60,000 entries for customer/cart/food
  • 10 entries for staff and tables
  • Customer owns one cart
  • Staff and customer roles are disjoint

Primary Keys & Foreign Keys

All entities use proper PKs & FKs such as:

  • customer(customer_id)
  • staff(staff_id)
  • food(food_id)
  • orders(order_id)
  • evaluate(order_id, customer_id)

🧨 Database Triggers

  • not_in_customer: Prevent duplicate staff/customer IDs
  • check_table_from_dine_in: Ensure table exists
  • check_table_use_table: Prevent multiple customers from using the same table

🚀 Summary

This system demonstrates:

  • Web development
  • PHP + MySQL
  • Database schema design
  • Trigger implementation
  • UI/UX development
  • Team collaboration

About

Businesses can not only improve their profits due to good evaluations but also complete customers' orders more efficiently and accurately according to the information provided by the website. Customers will enjoy a smoother ordering process and lead to a better dining experience.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors