public void Suggested(string name, string number) { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); IConfigurationRoot configuration = builder.Build(); var optionsBuilder = new DbContextOptionsBuilder <PizzaStoreDBContext>(); optionsBuilder.UseSqlServer(configuration.GetConnectionString("PizzaStoreDB")); var repo = new PizzaStoreRepository(new PizzaStoreDBContext(optionsBuilder.Options)); var PST = repo.GetCustomers(); var cust = PST.FirstOrDefault(x => x.FirstName == name && x.PhoneNumber == number); if (cust != null && cust.FirstName == name && cust.PhoneNumber == number) { try { var od = repo.GetOrders().LastOrDefault(x => x.CustomerName == name && x.CustomerPhoneNumber == number); var p = repo.GetPizzas().LastOrDefault(x => x.OrderId == od.OrderNumber); Console.WriteLine("Heres a Suggestion: "); Console.WriteLine($"A {p.Size} Pizza "); Console.WriteLine($"With {p.Topping} topping"); } catch (Exception) { Console.WriteLine("Nothing to suggest."); } } }
public void Sort() { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); IConfigurationRoot configuration = builder.Build(); var optionsBuilder = new DbContextOptionsBuilder <PizzaStoreDBContext>(); optionsBuilder.UseSqlServer(configuration.GetConnectionString("PizzaStoreDB")); var repo = new PizzaStoreRepository(new PizzaStoreDBContext(optionsBuilder.Options)); var PSP = repo.GetPizzas(); int i = 0; Console.WriteLine("1) by earliest."); Console.WriteLine("2) by latest."); Console.WriteLine("3) by lowest price."); Console.WriteLine("4) by highest price."); Console.WriteLine("How would you like to see the orders: "); i = Convert.ToInt32(Console.ReadLine()); switch (i) { case 1: { var OE = repo.GetOrders().OrderBy(x => x.OrderDate); foreach (var item in OE) { Console.WriteLine("______________________________"); Console.WriteLine($"Order Number: {item.OrderNumber}"); Console.WriteLine($"Customer Name: {item.CustomerName} {item.CustomerLastname}"); Console.WriteLine($"Customer #: {item.CustomerPhoneNumber}"); Console.WriteLine($"Order location: {item.OrderLocaton}"); Console.WriteLine($"Store: {item.StoreName}"); foreach (var pizza in PSP.Where(x => x.OrderId == item.OrderNumber)) { Console.WriteLine(); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine($"Pizza size: {pizza.Size}"); Console.WriteLine($"Pizza Topping: {pizza.Topping}"); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine(); } Console.WriteLine($"Price: {item.PizzaPrice}"); Console.WriteLine($"Total Price: {item.PizzaFprice}"); Console.WriteLine($"Order Date: {item.OrderDate}"); Console.WriteLine("______________________________"); Console.WriteLine(); } Console.ReadLine(); Admin(); break; } case 2: { var OE = repo.GetOrders().OrderByDescending(x => x.OrderDate); foreach (var item in OE) { Console.WriteLine("______________________________"); Console.WriteLine($"Order Number: {item.OrderNumber}"); Console.WriteLine($"Customer Name: {item.CustomerName} {item.CustomerLastname}"); Console.WriteLine($"Customer #: {item.CustomerPhoneNumber}"); Console.WriteLine($"Order location: {item.OrderLocaton}"); Console.WriteLine($"Store: {item.StoreName}"); foreach (var pizza in PSP.Where(x => x.OrderId == item.OrderNumber)) { Console.WriteLine(); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine($"Pizza size: {pizza.Size}"); Console.WriteLine($"Pizza Topping: {pizza.Topping}"); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine(); } Console.WriteLine($"Price: {item.PizzaPrice}"); Console.WriteLine($"Total Price: {item.PizzaFprice}"); Console.WriteLine($"Order Date: {item.OrderDate}"); Console.WriteLine("______________________________"); Console.WriteLine(); } Console.ReadLine(); Admin(); break; } case 3: { var OE = repo.GetOrders().OrderBy(x => x.PizzaFprice); foreach (var item in OE) { Console.WriteLine("______________________________"); Console.WriteLine($"Order Number: {item.OrderNumber}"); Console.WriteLine($"Customer Name: {item.CustomerName} {item.CustomerLastname}"); Console.WriteLine($"Customer #: {item.CustomerPhoneNumber}"); Console.WriteLine($"Order location: {item.OrderLocaton}"); Console.WriteLine($"Store: {item.StoreName}"); foreach (var pizza in PSP.Where(x => x.OrderId == item.OrderNumber)) { Console.WriteLine(); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine($"Pizza size: {pizza.Size}"); Console.WriteLine($"Pizza Topping: {pizza.Topping}"); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine(); } Console.WriteLine($"Price: {item.PizzaPrice}"); Console.WriteLine($"Total Price: {item.PizzaFprice}"); Console.WriteLine($"Order Date: {item.OrderDate}"); Console.WriteLine("______________________________"); Console.WriteLine(); } Console.ReadLine(); Admin(); break; } case 4: { var OE = repo.GetOrders().OrderByDescending(x => x.PizzaFprice); foreach (var item in OE) { Console.WriteLine("______________________________"); Console.WriteLine($"Order Number: {item.OrderNumber}"); Console.WriteLine($"Customer Name: {item.CustomerName} {item.CustomerLastname}"); Console.WriteLine($"Customer #: {item.CustomerPhoneNumber}"); Console.WriteLine($"Order location: {item.OrderLocaton}"); Console.WriteLine($"Store: {item.StoreName}"); foreach (var pizza in PSP.Where(x => x.OrderId == item.OrderNumber)) { Console.WriteLine(); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine($"Pizza size: {pizza.Size}"); Console.WriteLine($"Pizza Topping: {pizza.Topping}"); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine(); } Console.WriteLine($"Price: {item.PizzaPrice}"); Console.WriteLine($"Total Price: {item.PizzaFprice}"); Console.WriteLine($"Order Date: {item.OrderDate}"); Console.WriteLine("______________________________"); Console.WriteLine(); } Console.ReadLine(); Admin(); break; } default: { Console.WriteLine("Error!"); Console.ReadLine(); Admin(); } break; } }
public void OrdersbyUser() { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); IConfigurationRoot configuration = builder.Build(); var optionsBuilder = new DbContextOptionsBuilder <PizzaStoreDBContext>(); optionsBuilder.UseSqlServer(configuration.GetConnectionString("PizzaStoreDB")); var repo = new PizzaStoreRepository(new PizzaStoreDBContext(optionsBuilder.Options)); string CName; string Pnumber; Console.Write("Enter youre name: "); CName = Console.ReadLine(); CName = CName.ToUpper(); Console.Write("And you're phone number: "); Pnumber = Console.ReadLine(); var PSC = repo.GetCustomers().FirstOrDefault(x => x.FirstName == CName && x.PhoneNumber == Pnumber); if (PSC.FirstName == CName && PSC.PhoneNumber == Pnumber) { var PSO = repo.GetOrders().Where(x => x.CustomerName == CName && x.CustomerPhoneNumber == Pnumber); var PSP = repo.GetPizzas(); Console.WriteLine("********** ORDER HISTORY by Location **********"); Console.WriteLine(); foreach (var item in PSO) { Console.WriteLine("______________________________"); Console.WriteLine($"Order Number: {item.OrderNumber}"); Console.WriteLine($"Customer Name: {item.CustomerName} {item.CustomerLastname}"); Console.WriteLine($"Customer #: {item.CustomerPhoneNumber}"); Console.WriteLine($"Order location: {item.OrderLocaton}"); Console.WriteLine($"Store: {item.StoreName}"); foreach (var pizza in PSP.Where(x => x.OrderId == item.OrderNumber)) { Console.WriteLine(); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine($"Pizza size: {pizza.Size}"); Console.WriteLine($"Pizza Topping: {pizza.Topping}"); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine(); } Console.WriteLine($"Price: {item.PizzaPrice}"); Console.WriteLine($"Total Price: {item.PizzaFprice}"); Console.WriteLine($"Order Date: {item.OrderDate}"); Console.WriteLine("______________________________"); Console.WriteLine(); } } else { Console.WriteLine("Error"); Console.ReadLine(); Admin(); } Console.ReadLine(); Admin(); }
public void OrdersbyLocation() { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); IConfigurationRoot configuration = builder.Build(); var optionsBuilder = new DbContextOptionsBuilder <PizzaStoreDBContext>(); optionsBuilder.UseSqlServer(configuration.GetConnectionString("PizzaStoreDB")); var repo = new PizzaStoreRepository(new PizzaStoreDBContext(optionsBuilder.Options)); string location = ""; int loc; int count = 1; var STS = repo.GetStores(); foreach (var item in STS) { Console.WriteLine("=============================="); Console.WriteLine($"{count}) {item.StoreName} ({item.StoreLocation})"); Console.WriteLine("=============================="); count++; } loc = Convert.ToInt32(Console.ReadLine()); switch (loc) { case 1: { var l = STS.FirstOrDefault(x => x.Id == loc); location = l.StoreLocation; break; } case 2: { var l = STS.FirstOrDefault(x => x.Id == loc); location = l.StoreLocation; break; } case 3: { var l = STS.FirstOrDefault(x => x.Id == loc); location = l.StoreLocation; break; } default: { Console.WriteLine("Wrong input!!"); Menu(); } break; } var PSO = repo.GetOrders().Where(x => x.OrderLocaton == location); var PSP = repo.GetPizzas(); Console.WriteLine("********** ORDER HISTORY by Location **********"); Console.WriteLine(); foreach (var item in PSO) { Console.WriteLine("______________________________"); Console.WriteLine($"Order Number: {item.OrderNumber}"); Console.WriteLine($"Customer Name: {item.CustomerName} {item.CustomerLastname}"); Console.WriteLine($"Customer #: {item.CustomerPhoneNumber}"); Console.WriteLine($"Order location: {item.OrderLocaton}"); Console.WriteLine($"Store: {item.StoreName}"); foreach (var pizza in PSP.Where(x => x.OrderId == item.OrderNumber)) { Console.WriteLine(); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine($"Pizza size: {pizza.Size}"); Console.WriteLine($"Pizza Topping: {pizza.Topping}"); Console.WriteLine("||||||||||||||||||||"); Console.WriteLine(); } Console.WriteLine($"Price: {item.PizzaPrice}"); Console.WriteLine($"Total Price: {item.PizzaFprice}"); Console.WriteLine($"Order Date: {item.OrderDate}"); Console.WriteLine("______________________________"); Console.WriteLine(); } Console.ReadLine(); Admin(); }