89 lines
1.7 KiB
C++
89 lines
1.7 KiB
C++
/*
|
|
Author: Joel Mathew Thomas
|
|
Date: 18-02-2026
|
|
*/
|
|
|
|
#include <iostream>
|
|
#include "FoodDeliveryController.h"
|
|
#include "RestaurantOwnerMenu.h"
|
|
#include "inputHelper.h"
|
|
#include "outputHelper.h"
|
|
|
|
void RestaurantOwnerMenu::showMenu()
|
|
{
|
|
bool isMenuActive = true;
|
|
while (isMenuActive)
|
|
{
|
|
try
|
|
{
|
|
int choice;
|
|
util::clear();
|
|
std::cout << "Welcome " << m_userFullName << "\n";
|
|
std::cout << "Restaurant Owner Menu\n"
|
|
"1. List My Restaurants\n"
|
|
"2. Add New Restaurant\n"
|
|
"3. Update Restaurant Status\n"
|
|
"4. List Orders\n"
|
|
"5. Mark Order Ready for Delivery\n"
|
|
"6. List Menu Items\n"
|
|
"7. Add New Item to Menu\n"
|
|
"8. Remove Item from Menu\n"
|
|
"9. View My Profile\n"
|
|
"10. Logout\n"
|
|
"Choice?: ";
|
|
util::readValue<int>(choice);
|
|
if (!handleOperation(choice))
|
|
{
|
|
isMenuActive = false;
|
|
}
|
|
}
|
|
catch (const std::exception& e)
|
|
{
|
|
std::cout << "Exception: " << e.what() << std::endl;
|
|
util::pressEnter();
|
|
}
|
|
}
|
|
}
|
|
|
|
bool RestaurantOwnerMenu::handleOperation(int choice)
|
|
{
|
|
bool isMenuActive = true;
|
|
util::clear();
|
|
switch (choice)
|
|
{
|
|
case 1:
|
|
m_foodDeliveryController.listRestaurants();
|
|
break;
|
|
case 2:
|
|
m_foodDeliveryController.addNewRestaurant();
|
|
break;
|
|
case 3:
|
|
m_foodDeliveryController.updateRestaurantStatus();
|
|
break;
|
|
case 4:
|
|
m_foodDeliveryController.listRestaurantOrders();
|
|
break;
|
|
case 5:
|
|
m_foodDeliveryController.markOrderReady();
|
|
break;
|
|
case 6:
|
|
m_foodDeliveryController.listMenuItems();
|
|
break;
|
|
case 7:
|
|
m_foodDeliveryController.addMenuItem();
|
|
break;
|
|
case 8:
|
|
m_foodDeliveryController.removeMenuItem();
|
|
break;
|
|
case 9:
|
|
m_foodDeliveryController.viewProfile();
|
|
break;
|
|
case 10:
|
|
return false;
|
|
default:
|
|
std::cout << "Invalid Choice!\n";
|
|
}
|
|
util::pressEnter();
|
|
return isMenuActive;
|
|
}
|