Files
Training-1914-Jan26/Trenser.FoodDeliveryApp/Trenser.FoodDeliveryApp/RestaurantOwnerMenu.cpp
T
2026-02-18 23:50:51 +05:30

82 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)
{
char choice;
util::clear();
std::cout << "Welcome " << m_userFullName << "\n";
std::cout << "Restaurant Owner Menu\n"
"1. List My Restaurants\n"
"2. Update Restaurant Status\n"
"3. List Orders\n"
"4. Mark Order Ready for Delivery\n"
"5. List Menu Items\n"
"6. Add New Item to Menu\n"
"7. Remove Item from Menu\n"
"8. View My Profile\n"
"9. Logout\n"
"Choice?: ";
util::readValue<char>(choice);
if (!handleOperation(choice))
{
isMenuActive = false;
}
}
}
bool RestaurantOwnerMenu::handleOperation(char choice)
{
bool isMenuActive = true;
util::clear();
switch (choice)
{
case '1':
m_foodDeliveryController.listRestaurants();
break;
case '2':
m_foodDeliveryController.updateRestaurantStatus();
break;
case '3':
m_foodDeliveryController.listRestaurantOrders();
break;
case '4':
m_foodDeliveryController.markOrderReady();
break;
case '5':
m_foodDeliveryController.listMenuItems();
break;
case '6':
m_foodDeliveryController.addMenuItem();
break;
case '7':
m_foodDeliveryController.removeMenuItem();
break;
case '8':
m_foodDeliveryController.viewProfile();
break;
case '9':
m_foodDeliveryController.logout();
isMenuActive = false;
break;
}
std::cout << "\nDo you want to continue (Y/N)?: ";
util::readValue<char>(choice);
if (choice != 'Y' && choice != 'y')
{
isMenuActive = false;
}
return isMenuActive;
}