public int BookTable(NewCustomer.Customer customer) { BookTable: ShowTables(); Console.WriteLine("Enter the table number to book"); int tableToBook = Convert.ToInt32(Console.ReadLine()); foreach (TableModel tableAvailable in tables) { if ((tableAvailable.TableNumber == tableToBook) && tableAvailable.IsTableAvailable) { //Console.WriteLine(tableAvailable.getSetTableNumber + " " + ((tableAvailable.getSetIsTableAvailabile) ? "Available" : "Booked")); Console.WriteLine("Booked"); tableAvailable.IsTableAvailable = false; customer.TableId = tableToBook; break; } else if ((tableAvailable.TableNumber == tableToBook) && !tableAvailable.IsTableAvailable) { Console.WriteLine("Table is already booked"); goto BookTable; } } return(tableToBook); }
private void OrderItems(NewCustomer.Customer customer) { int ans; do { SelectItem: ShowItems(); Console.WriteLine("Enter item to order"); int iId = Convert.ToInt16(Console.ReadLine()); ItemModel obj = null; foreach (ItemModel item in items) { if (item.ItemId == iId && item.IsItemAvailable) { obj = item; break; } else if (item.ItemId == iId && !item.IsItemAvailable) { Console.WriteLine("Item is either not available or It is an Invalid Option"); goto SelectItem; } } OrderedItemModel orderedItemsTemp = new OrderedItemModel(); Console.WriteLine($"Enter quantity of {obj.ItemName}"); orderedItemsTemp.OrderedItemQuantity = Convert.ToInt16(Console.ReadLine()); orderedItemsTemp.OrderedItem = obj; orderedItemList.Add(orderedItemsTemp); Console.WriteLine("\nDo You want to order more items\n1. Yes\n2. No\n"); ans = Convert.ToInt16(Console.ReadLine()); } while (ans == 1); }
private void Bill(NewCustomer.Customer customer) { Console.WriteLine("Your Bill is:"); Console.WriteLine("-----------------------------------------"); Console.WriteLine($"Customer Name: {customer.CustomerName}"); Console.WriteLine("---------------------------------------------"); long total = 0; int count = 1; List <OrderedItemModel> oList = orderedItemList; ConsoleTable table = new ConsoleTable("Sr. No.", "Item Id", "Item Name", "Item Quantity", "Item Price"); foreach (OrderedItemModel ol in oList) { total = total + (ol.OrderedItemQuantity * ol.OrderedItem.ItemPrice); table.AddRow(count++, ol.OrderedItem.ItemId, ol.OrderedItem.ItemName, ol.OrderedItemQuantity, ol.OrderedItemQuantity * ol.OrderedItem.ItemPrice); } table.Write(Format.Alternative); Console.WriteLine("---------------------------------------------"); Console.WriteLine($"Total amount is: {total}"); Console.WriteLine("---------------------------------------------"); customer.BillAmount = total; CustomerList.Add(customer); admin.AddCustomerToList(CustomerList); }
public void PlaceOrder(AdminClass admin, NewCustomer.Customer customer) { this.admin = admin; customer.RestroName = "Pizza Hut"; BookTable(customer); OrderItems(customer); Bill(customer); }
public void PlaceOrder(AdminClass admin, NewCustomer.Customer customer) { this.admin = admin; customer.RestroName = "McD"; BookTable(customer); OrderItems(customer); Bill(customer); var sendBillViaMail = new SendBillViaMail(); var mailService = new MailService(); sendBillViaMail.SentMail += mailService.OnSentMail; sendBillViaMail.PayBill(customer); }