Exemplo n.º 1
0
        public override Models.Pizza Make(Models.Size s, List <Models.Topping> t)
        {
            Data.Entities.Crust chicagoCrustDB    = _db.Crust.Find(3);
            Models.Crust        chicagoCrustModel = new Models.Crust(chicagoCrustDB.Name, chicagoCrustDB.Price)
            {
                Id = chicagoCrustDB.CrustId
            };
            Models.Pizza pizza = new Models.Pizza()
            {
                Size  = s,
                Crust = chicagoCrustModel
            };
            foreach (Models.Topping topping in t)
            {
                pizza.AddTopping(topping);
            }

            return(pizza);
        }
Exemplo n.º 2
0
        public void Login()
        {
            if (_user != null)
            {
                System.Console.WriteLine("Please log out before logging into a different acount...");
                return;
            }
            System.Console.WriteLine("Logging in...");
            System.Console.Write("Enter user id: ");
            int id = System.Convert.ToInt32(System.Console.ReadLine());

            Data.Entities.User dbUser = _db.User.Find(id);
            Data.Entities.Name dbName = _db.Name.Find(dbUser.NameId);
            if (dbUser == null)
            {
                System.Console.WriteLine("Invalid user id");
                return;
            }
            _user = new User()
            {
                Name = new Name()
                {
                    First = dbName.FirstName,
                    Last  = dbName.LastName
                },
                Id = id
            };

            _user.OrderHistory = new List <Order>();
            foreach (Data.Entities.Order o in _db.Order.ToList())
            {
                if (o.UserId == id)
                {
                    Order order = new Order(_user);
                    foreach (Data.Entities.Pizza p in _db.Pizza.ToList())
                    {
                        if (p.OrderId == o.OrderId)
                        {
                            Data.Entities.Crust pizzaCrust = _db.Crust.Find(p.CrustId);
                            Data.Entities.Size  pizzaSize  = _db.Size.Find(p.SizeId);
                            Pizza pizza = new Pizza()
                            {
                                Crust = new Crust(p.Crust.Name, p.Crust.Price)
                                {
                                    Id = p.CrustId
                                },
                                Size = new Size(p.Size.Name, p.Size.Price)
                                {
                                    Id = p.SizeId
                                }
                            };

                            Data.Entities.Topping topping;

                            topping = _db.Topping.Find(p.ToppingId1);
                            if (p.ToppingId1 != null)
                            {
                                pizza.AddTopping(new Topping(topping.Name, topping.Price)
                                {
                                    Id = topping.ToppingId
                                });
                            }
                            topping = _db.Topping.Find(p.ToppingId2);
                            if (p.ToppingId2 != null)
                            {
                                pizza.AddTopping(new Topping(topping.Name, topping.Price)
                                {
                                    Id = topping.ToppingId
                                });
                            }
                            topping = _db.Topping.Find(p.ToppingId3);
                            if (p.ToppingId3 != null)
                            {
                                pizza.AddTopping(new Topping(topping.Name, topping.Price)
                                {
                                    Id = topping.ToppingId
                                });
                            }
                            topping = _db.Topping.Find(p.ToppingId4);
                            if (p.ToppingId4 != null)
                            {
                                pizza.AddTopping(new Topping(topping.Name, topping.Price)
                                {
                                    Id = topping.ToppingId
                                });
                            }
                            topping = _db.Topping.Find(p.ToppingId5);
                            if (p.ToppingId5 != null)
                            {
                                pizza.AddTopping(new Topping(topping.Name, topping.Price)
                                {
                                    Id = topping.ToppingId
                                });
                            }

                            order.AddToOrder(pizza);
                        }
                    }
                    order.CalculatePrice();
                    _user.OrderHistory.Add(order);
                }
            }
        }