Implementation Report

Lab 10: HHM Fast Food Management System


Overview

In this lab we built the HHM Fast Food Management System as a multi-page ASP.NET Web Forms application using VB.NET and SQL Server. The system supports two types of users: customers who browse the menu and place orders, and staff (Manager, Chef, Cashier, Inventory Person) who log in through a separate portal and access role-specific dashboards.

HTML, ASPX & VB Code

IAD Lab 10 Code.pdf

Pages Implemented

Page Purpose
LoginChoice.aspx Entry point: lets user choose between Customer or Staff login
Login.aspx Customer login with email and password, sets session variables
Registration.aspx New customer signup, inserts into Customer table
StaffLogin.aspx Employee login, reads RoleID and routes to the correct dashboard
Menu.aspx Shows food category cards linking to category pages
Pizza.aspx / Burgers.aspx / Broast.aspx / Shawarma.aspx Category pages: load items from MenuItem table via Repeater, allow Add to Cart
SearchResults.aspx LIKE query search across MenuItem, supports Add to Cart from results
Cart.aspx Shows current pending order items, allows quantity changes and checkout
Payment.aspx Displays order total, accepts payment method, finalizes order using a transaction
Track.aspx Customer enters Order ID to check status and estimated time
ManagerDashboard.aspx Manager home with links to Employees, Finance, and Add Employee
ManagerAddEmployee.aspx Form to insert a new employee record with role and salary
ManagerEmployees.aspx GridView to update existing employee salary and role
ManagerFinance.aspx Shows total revenue, expenses, and net profit with supporting GridViews
ChefDashboard.aspx Kitchen display: shows paid orders with item lists, Mark as Ready button assigns a waiter
CashierDashboard.aspx Verification queue: approves paid orders and sends them to kitchen; daily revenue summary
InventoryDashboard.aspx Log new shipments: selects supplier and item, updates stock and records expense

Database Tables Used

Table Purpose
Customer Stores customer name, email, password
Employee Stores staff credentials, role, and salary
RolePermissions Linked to Employee on login to retrieve access flags
MenuItem Stores product name, price, category, availability
[Order] One row per customer order with status and total
OrderLine One row per product in an order with quantity
Payment Stores payment type, amount, and status for each order
Supplier / Shipment / ShipmentItem / Item Used by Inventory dashboard for restocking and expense tracking

Test Cases

# Test Case Expected Output
1 Customer registers with a new email Record inserted, success message shown
2 Customer registers with a duplicate email Message: "This email is already registered."
3 Customer logs in with correct credentials Session set, redirected to Menu.aspx
4 Customer logs in with wrong password Message: "Invalid Customer email or password."
5 Add item to cart when not logged in Redirected to Login.aspx
6 Add item to cart when logged in Order and OrderLine created or updated, success message shown
7 Add same item to cart again Quantity incremented, no duplicate OrderLine row
8 Complete payment with a method selected Payment inserted, order status set to Verification, redirected
9 Complete payment without selecting a method Message: "Please select a payment method."
10 Staff logs in as Manager (RoleID 1) Redirected to ManagerDashboard.aspx
11 Staff logs in as Chef (RoleID 2) Redirected to ChefDashboard.aspx
12 Direct URL access to ManagerDashboard without login Redirected to StaffLogin.aspx
13 Cashier approves a Verification order Order status set to Paid, order moves to Chef queue
14 Chef marks an order as Ready Order status set to Ready, waiter name displayed
15 Inventory logs a shipment with valid quantity Shipment recorded, Item stock updated, success message shown
16 Inventory logs a shipment with invalid quantity Message: "Please enter a valid quantity."
17 Search for a product that exists Matching items shown in Repeater
18 Search for a product that does not exist Panel shows "Sorry, this item was not found!"

Back
Web hosting by Somee.com