Exemple #1
0
        public void SearchCustomer()
        {
            string Name;
            string Pnumber;

            Console.WriteLine("------Look for Customer------");
            Console.WriteLine("");
            Console.WriteLine("Please enter customer Name: ");
            Name = Console.ReadLine();
            Name = Name.ToUpper();
            Console.WriteLine("And phone number: ");
            Pnumber = Console.ReadLine();
            if (Pnumber == null || Pnumber == " ")
            {
                do
                {
                    Console.WriteLine();
                    Console.WriteLine("Warning: You need to enter a Phone Number in order to identify you.");
                    Console.Write("Please enter your phone number: ");
                    Pnumber = Console.ReadLine();
                } while (Pnumber != null || Pnumber != "");
            }

            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;

            PST.FindbyNameandnumber(Name, Pnumber);
            Menu();
        }
Exemple #2
0
        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.");
                }
            }
        }
Exemple #3
0
        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;
            }
        }
Exemple #4
0
        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();
        }
Exemple #5
0
        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();
        }
Exemple #6
0
        public void PlaceOrder2()
        {
            Random   rdm  = new Random();
            int      ONum = rdm.Next(1, 1000000);
            string   CName;
            string   Pnum;
            string   LName     = "";
            string   Olocation = "";
            double   PPrice    = 0;
            double   PFPrice;
            DateTime ODate     = DateTime.Now;
            string   storeName = "";

            string Psize = "";
            string Ptopping;
            bool   PGcrust = false;
            int    Oid     = ONum;

            List <Pizza> piz = new List <Pizza>();

            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();

            Console.Clear();
            Console.WriteLine("------Place you're order------");
            Console.WriteLine("");
            Console.Write("Enter youre name: ");
            CName = Console.ReadLine();
            CName = CName.ToUpper();
            Console.Write("And you're phone number: ");
            Pnum = Console.ReadLine();
            if (Pnum == null || Pnum == " ")
            {
                do
                {
                    Console.WriteLine();
                    Console.WriteLine("Warning: You need to enter a Phone Number in order to identify you.");
                    Console.Write("Please enter your phone number: ");
                    Pnum = Console.ReadLine();
                } while (Pnum != null || Pnum != "");
            }

            var cust = PST.FirstOrDefault(x => x.FirstName == CName &&
                                          x.PhoneNumber == Pnum);

            try
            {
                if (cust.FirstName != CName && cust.PhoneNumber != Pnum)
                {
                    Console.WriteLine("WARNING: No such customer exists please try again...");
                    Menu();
                }
                else
                {
                    Console.WriteLine($"customer found!");
                    Console.Clear();

                    Suggested(CName, Pnum);

                    var PSS   = repo.GetStores();
                    int count = 1;

                    Console.WriteLine("------Pizza------");
                    Console.WriteLine("");
                    foreach (var item in PSS)
                    {
                        Console.WriteLine();
                        Console.WriteLine("==============================");
                        Console.WriteLine($"{count}) {item.StoreName} ({item.StoreLocation})");
                        Console.WriteLine("==============================");
                        count++;
                    }
                    Console.Write("Where do you want to order from: ");
                    int ch = Convert.ToInt32(Console.ReadLine());

                    switch (ch)
                    {
                    case 1:
                    {
                        storeName = "RBPizzas";
                        break;
                    }

                    case 2:
                    {
                        storeName = "Washinton DC";
                        break;
                    }

                    case 3:
                    {
                        storeName = "Alexandria";
                        break;
                    }

                    default:
                    {
                        Console.WriteLine("Wrong input");
                        Menu();
                    }
                    break;
                    }

                    Console.Write("Choose you're pizza size: (1.REGULAR, 2.MEDIUM, 3.LARGE, 4.EXTRALARGE)");
                    int ps = Convert.ToInt32(Console.ReadLine());
                    switch (ps)
                    {
                    case 1:
                    {
                        Psize = "REGULAR";
                        break;
                    }

                    case 2:
                    {
                        Psize = "MEDIUM";
                        break;
                    }

                    case 3:
                    {
                        Psize = "LARGE";
                        break;
                    }

                    case 4:
                    {
                        Psize = "EXTRALARGE";
                        break;
                    }

                    default:
                    {
                        Console.WriteLine("Wrong input");
                        Menu();
                    }
                    break;
                    }

                    if (Psize == "REGULAR")
                    {
                        PPrice = PPrice + 5;
                    }
                    else if (Psize == "MEDIUM")
                    {
                        PPrice = PPrice + 10;
                    }
                    else if (Psize == "LARGE")
                    {
                        PPrice = PPrice + 15;
                    }
                    else if (Psize == "EXTRALARGE")
                    {
                        PPrice = PPrice + 20;
                    }

                    Console.Write("Choose you're tooping: (1.CHICKEN, 2.PEPPERONI, 3.VEGGIES)");
                    int pt = Convert.ToInt32(Console.ReadLine());
                    Ptopping = Console.ReadLine();
                    switch (pt)
                    {
                    case 1:
                    {
                        Ptopping = "CHICKEN";
                        break;
                    }

                    case 2:
                    {
                        Ptopping = "PEPPERONI";
                        break;
                    }

                    case 3:
                    {
                        Ptopping = "VEGGIES";
                        break;
                    }

                    case 4:
                    {
                        Psize = "EXTRALARGE";
                        break;
                    }

                    default:
                    {
                        Console.WriteLine("Wrong input");
                        Menu();
                    }
                    break;
                    }

                    if (Ptopping == "CHICKEN")
                    {
                        PPrice = PPrice + 1;
                    }
                    else if (Ptopping == "PEPPERONI")
                    {
                        PPrice = PPrice + .50;
                    }
                    else if (Ptopping == "VEGGIES")
                    {
                        PPrice = PPrice + 3;
                    }
                    Console.Write("Do you want garlic on you're pizza crust: [Y/N] ");
                    string ans = Console.ReadLine();
                    ans = ans.ToUpper();
                    if (ans == "Y")
                    {
                        PGcrust = true;
                    }
                    else if (ans == "N")
                    {
                        PGcrust = false;
                    }
                    else
                    {
                        PGcrust = false;
                    }

                    if (PGcrust == true)
                    {
                        PPrice = PPrice + 1;
                    }


                    PFPrice = (PPrice + (PPrice * .08));
                    if (PFPrice < 500)
                    {
                        repo.AddOrders(ONum, CName, LName = cust.LastName, Olocation = cust.Location.ToUpper(), PPrice, PFPrice, ODate, storeName, Pnum);
                        repo.SaveChanges();
                        repo.AddPizza(Psize, Ptopping, PGcrust, Oid);
                        repo.SaveChanges();
                    }
                    else
                    {
                        Console.WriteLine("WARNING: TOTAL PRICE SURPASSES 500$ ");
                        Console.ReadLine();
                        Menu();
                    }

                    Console.Clear();
                    Console.WriteLine("---Order Details---");
                    Console.WriteLine();
                    Console.WriteLine($"Order Number: {ONum}");
                    Console.Write(CName.ToUpper() + " ");
                    Console.WriteLine(LName.ToUpper());
                    Console.WriteLine($"Customer #: {Pnum}");
                    Console.WriteLine($"Order location: {Olocation}");
                    Console.WriteLine($"Store: {storeName}");
                    Console.WriteLine($"Pizza size: {Psize}");
                    Console.WriteLine($"Pizza topping: {Ptopping}");
                    Console.WriteLine($"Garlic Crust: {PGcrust}");
                    Console.WriteLine($"Price: {PPrice}");
                    Console.WriteLine($"Total Price: {PFPrice}");
                    Console.WriteLine($"Order Date: {ODate}");
                    Console.ReadLine();
                    Menu();
                }
            }
            catch (Exception)
            {
                Console.WriteLine("Error!");
                Console.ReadLine();
                Menu();
            }
        }
Exemple #7
0
        public void CreateUser()
        {
            string FName   = null;
            string LName   = null;
            string PNumber = null;
            string Loc     = "";

            Console.Clear();
            Console.WriteLine("------User Creation------");
            Console.WriteLine(" ");
            Console.Write("Please enter your first name: ");
            FName = Console.ReadLine();
            Console.WriteLine();
            Console.Write("Please enter your last name: ");
            LName = Console.ReadLine();
            Console.WriteLine();
            Console.Write("Please enter your phone number: ");
            PNumber = Console.ReadLine();
            if (PNumber == null || PNumber == " ")
            {
                do
                {
                    Console.WriteLine();
                    Console.WriteLine("Warning: You need to enter a Phone Number in order to identify you.");
                    Console.Write("Please enter your phone number: ");
                    PNumber = Console.ReadLine();
                } while (PNumber != null || PNumber != "");
            }
            Console.WriteLine();
            Console.WriteLine("Please enter if you're from: ");
            Console.WriteLine("1) Reston.");
            Console.WriteLine("2) Washington DC.");
            Console.WriteLine("3) Alexandria.");
            int l = Convert.ToInt32(Console.ReadLine());

            switch (l)
            {
            case 1:
            {
                Loc = "Reston";
                break;
            }

            case 2:
            {
                Loc = "Washinton DC";
                break;
            }

            case 3:
            {
                Loc = "Alexandria";
                break;
            }

            default:
            {
                Console.WriteLine("Wrong input!");
                Console.ReadLine();
                Menu();
            }
            break;
            }


            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;

            PST.AddCustomer(FName = FName.ToUpper(), LName = LName.ToUpper(), PNumber, Loc = Loc.ToUpper());
            PST.SaveChanges();
            Console.ReadLine();
            Menu();
        }