public IActionResult PlaceOrder2(CartViewModel cartView) { PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); TempData["username"] = userViewModelClient.User.Login.Username; TempData["password"] = userViewModelClient.User.Login.Password; OrderModel cart; XmlSerializer deserializer = new XmlSerializer(typeof(OrderModel)); using (TextReader tr = new StringReader(TempData["cart"] as string)){ cart = (OrderModel)deserializer.Deserialize(tr); } TempData.Keep(); cart.Store = repo.FindStoreByName(cartView.StoreString); cart.PlaceOrder(); cart.User = userViewModelClient.User; repo.PlaceOrder(cart); return(View("AddedToCart")); }
public IActionResult Post(LoginViewModel loginViewModel) { if (ModelState.IsValid) { PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient userViewModelClient = repo.InitUser(loginViewModel.Username, loginViewModel.Password); UserViewModel userViewModel = new UserViewModel() { Orders = userViewModelClient.Orders, User = userViewModelClient.User, }; TempData["username"] = userViewModel.User.Login.Username; TempData["password"] = userViewModel.User.Login.Password; TempData.Keep(); System.Console.WriteLine("Login Controller: " + userViewModel.User.Name); return(View("Index", userViewModel)); } return(View("Login", loginViewModel)); }
public void Test1() { PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient User = new UserViewModelClient(); User = repo.InitUser("jpchionglo", "password"); Console.WriteLine(User.User.Name); }
public IActionResult gotoIndex() { TempData["username"] = TempData["username"]; TempData["password"] = TempData["password"]; TempData.Keep(); PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); UserViewModel userViewModel = new UserViewModel() { Orders = userViewModelClient.Orders, User = userViewModelClient.User, Store = userViewModelClient.Store, //Cart = repo.CreateOrder() }; return(View("Index", userViewModel)); }
//[InlineData("Pepperoni","HandTossed","Medium","Pepperoni")] //[InlineData("Pepperoni","HandTossed","Medium","Pepperoni")] public void Test1(string topping, string crust, string size, string name) { PizzaModel pizza = new PizzaModel(); pizza.Toppings.Add(new ToppingModel() { Name = topping }); pizza.Crust = new CrustModel() { Name = crust }; pizza.Size = new SizeModel() { Name = size }; pizza.Name = name; PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient user = repo.InitUser("jpchionglo", "password"); StoreModel store = repo.FindStoreByName("Oakwood"); OrderModel order = new OrderModel() { Pizzas = new System.Collections.Generic.List <PizzaModel>() { pizza }, User = user.User, Store = store }; order.PlaceOrder(); repo.PlaceOrder(order); }
public IActionResult PlaceOrder(CartViewModel cartViewModel) { PizzaBoxRepository repo = new PizzaBoxRepository(); //.WriteLine("MY NAME IS " + TempData["username"] as string); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); cartViewModel.Orders = userViewModelClient.Orders; cartViewModel.User = userViewModelClient.User; cartViewModel.Store = userViewModelClient.Store; //cartViewModel.Cart = userViewModelClient.Cart; //cartViewModel.Cart.User = cartViewModel.User; List <CrustModel> crusts = _db.Crust.ToList(); List <SizeModel> sizes = _db.Size.ToList(); List <ToppingModel> toppings = _db.Topping.ToList(); List <StoreModel> stores = _db.Store.ToList(); cartViewModel.SpecialtyPizzas = repo.GetSpecialtyPizzas(); foreach (CrustModel crust in crusts) { cartViewModel.Crusts.Add(crust.Name); } foreach (SizeModel size in sizes) { cartViewModel.Sizes.Add(size.Name); } foreach (ToppingModel topping in toppings) { cartViewModel.Toppings.Add(topping.Name); } foreach (StoreModel store in stores) { cartViewModel.Stores.Add(store.Name); } TempData["username"] = cartViewModel.User.Login.Username; TempData["password"] = cartViewModel.User.Login.Password; //Console.WriteLine("BUT MY REAL NAME IS " + cartViewModel.User.Name); string[] stringList = cartViewModel.SelectedToppings3.Split(' '); /* foreach (CheckBoxTopping check in cartViewModel.SelectedToppings2){ * * if (check.isSelected){ * stringList.Add(check.Text); * } * * } */ /* Console.WriteLine("BOXES CHECKED: " + stringList.Count); * Console.WriteLine("SELECTED TOPPINGS COUNT: " + cartViewModel.SelectedToppings2.Count); */ OrderModel cart; XmlSerializer deserializer = new XmlSerializer(typeof(OrderModel)); using (TextReader tr = new StringReader(TempData["cart"] as string)){ cart = (OrderModel)deserializer.Deserialize(tr); } if (ModelState.IsValid) { /* repo.AddPizzaToCart(new PizzaModel() {Name = "Custom", * Crust = repo.FindCrustByName(cartViewModel.Crust), * Size = repo.FindSizeByName(cartViewModel.Size), * Toppings = repo.FindToppingsByNames(stringList) * }, * Int32.Parse(TempData["orderid"] as string) * ); */ cart.Pizzas.Add(new PizzaModel() { Name = "Custom", Crust = repo.FindCrustByName(cartViewModel.Crust), Size = repo.FindSizeByName(cartViewModel.Size), Toppings = repo.FindToppingsByNames(stringList) }); } XmlSerializer serializer = new XmlSerializer(cart.GetType()); using (StringWriter sw = new StringWriter()){ serializer.Serialize(sw, cart); TempData["cart"] = sw.ToString(); } cartViewModel.Cart = cart; //TempData["orderid"] = cartViewModel.Cart.Id.ToString(); TempData.Keep(); return(View("Edit", cartViewModel)); }
public IActionResult AddSpecialPizza(CartViewModel cartViewModel) { PizzaBoxRepository repo = new PizzaBoxRepository(); //.WriteLine("MY NAME IS " + TempData["username"] as string); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); cartViewModel.Orders = userViewModelClient.Orders; cartViewModel.User = userViewModelClient.User; cartViewModel.Store = userViewModelClient.Store; //cartViewModel.Cart = userViewModelClient.Cart; //cartViewModel.Cart.User = cartViewModel.User; List <CrustModel> crusts = _db.Crust.ToList(); List <SizeModel> sizes = _db.Size.ToList(); List <ToppingModel> toppings = _db.Topping.ToList(); List <StoreModel> stores = _db.Store.ToList(); cartViewModel.SpecialtyPizzas = repo.GetSpecialtyPizzas(); foreach (CrustModel crust in crusts) { cartViewModel.Crusts.Add(crust.Name); } foreach (SizeModel size in sizes) { cartViewModel.Sizes.Add(size.Name); } foreach (ToppingModel topping in toppings) { cartViewModel.Toppings.Add(topping.Name); } foreach (StoreModel store in stores) { cartViewModel.Stores.Add(store.Name); } TempData["username"] = cartViewModel.User.Login.Username; TempData["password"] = cartViewModel.User.Login.Password; OrderModel cart; XmlSerializer deserializer = new XmlSerializer(typeof(OrderModel)); using (TextReader tr = new StringReader(TempData["cart"] as string)){ cart = (OrderModel)deserializer.Deserialize(tr); } /* if (ModelState.IsValid){ * * cart.Pizzas.Add(new PizzaModel() {Name = "Custom", * Crust = repo.FindCrustByName(cartViewModel.Crust), * Size = repo.FindSizeByName(cartViewModel.Size), * Toppings = repo.FindToppingsByNames(stringList) * }); * * } */ PizzaModel specialPizza = repo.GetSpecialPizzaByName(cartViewModel.SpecialtyPizza); cart.Pizzas.Add(specialPizza); XmlSerializer serializer = new XmlSerializer(cart.GetType()); using (StringWriter sw = new StringWriter()){ serializer.Serialize(sw, cart); TempData["cart"] = sw.ToString(); } cartViewModel.Cart = cart; //TempData["orderid"] = cartViewModel.Cart.Id.ToString(); TempData.Keep(); return(View("Edit", cartViewModel)); }
public IActionResult EditPizza(CartViewModel cartViewModel) { PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); cartViewModel.Orders = userViewModelClient.Orders; cartViewModel.User = userViewModelClient.User; cartViewModel.Store = userViewModelClient.Store; List <CrustModel> crusts = _db.Crust.ToList(); List <SizeModel> sizes = _db.Size.ToList(); List <ToppingModel> toppings = _db.Topping.ToList(); List <StoreModel> stores = _db.Store.ToList(); cartViewModel.SpecialtyPizzas = repo.GetSpecialtyPizzas(); foreach (CrustModel crust in crusts) { cartViewModel.Crusts.Add(crust.Name); } foreach (SizeModel size in sizes) { cartViewModel.Sizes.Add(size.Name); } foreach (ToppingModel topping in toppings) { cartViewModel.Toppings.Add(topping.Name); } foreach (StoreModel store in stores) { cartViewModel.Stores.Add(store.Name); } TempData["username"] = cartViewModel.User.Login.Username; TempData["password"] = cartViewModel.User.Login.Password; OrderModel cart; XmlSerializer deserializer = new XmlSerializer(typeof(OrderModel)); using (TextReader tr = new StringReader(TempData["cart"] as string)){ cart = (OrderModel)deserializer.Deserialize(tr); } string[] stringList = cartViewModel.SelectedToppings3.Split(' '); //Edit Pizza cart.Pizzas[Int32.Parse(cartViewModel.PizzaNumber)].Crust = repo.FindCrustByName(cartViewModel.Crust); cart.Pizzas[Int32.Parse(cartViewModel.PizzaNumber)].Size = repo.FindSizeByName(cartViewModel.Size); cart.Pizzas[Int32.Parse(cartViewModel.PizzaNumber)].Toppings = repo.FindToppingsByNames(stringList); /* cart.Pizzas.Add(new PizzaModel() {Name = "Custom", * Crust = repo.FindCrustByName(cartViewModel.Crust), * Size = repo.FindSizeByName(cartViewModel.Size), * Toppings = repo.FindToppingsByNames(stringList) * }); */ XmlSerializer serializer = new XmlSerializer(cart.GetType()); using (StringWriter sw = new StringWriter()){ serializer.Serialize(sw, cart); TempData["cart"] = sw.ToString(); } cartViewModel.Cart = cart; TempData.Keep(); return(View("Edit", cartViewModel)); }
public IActionResult RemovePizza(CartViewModel cartViewModel) { PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); cartViewModel.Orders = userViewModelClient.Orders; cartViewModel.User = userViewModelClient.User; cartViewModel.Store = userViewModelClient.Store; List <CrustModel> crusts = _db.Crust.ToList(); List <SizeModel> sizes = _db.Size.ToList(); List <ToppingModel> toppings = _db.Topping.ToList(); List <StoreModel> stores = _db.Store.ToList(); cartViewModel.SpecialtyPizzas = repo.GetSpecialtyPizzas(); foreach (CrustModel crust in crusts) { cartViewModel.Crusts.Add(crust.Name); } foreach (SizeModel size in sizes) { cartViewModel.Sizes.Add(size.Name); } foreach (ToppingModel topping in toppings) { cartViewModel.Toppings.Add(topping.Name); } foreach (StoreModel store in stores) { cartViewModel.Stores.Add(store.Name); } TempData["username"] = cartViewModel.User.Login.Username; TempData["password"] = cartViewModel.User.Login.Password; OrderModel cart; XmlSerializer deserializer = new XmlSerializer(typeof(OrderModel)); using (TextReader tr = new StringReader(TempData["cart"] as string)){ cart = (OrderModel)deserializer.Deserialize(tr); } //Remove Pizza cart.Pizzas.RemoveAt(Int32.Parse(cartViewModel.PizzaNumber)); XmlSerializer serializer = new XmlSerializer(cart.GetType()); using (StringWriter sw = new StringWriter()){ serializer.Serialize(sw, cart); TempData["cart"] = sw.ToString(); } cartViewModel.Cart = cart; TempData.Keep(); return(View("Edit", cartViewModel)); }
public IActionResult Edit() { PizzaBoxRepository repo = new PizzaBoxRepository(); UserViewModelClient userViewModelClient = repo.InitUser(TempData["username"] as string, TempData["password"] as string); CartViewModel userViewModel = new CartViewModel() { Orders = userViewModelClient.Orders, User = userViewModelClient.User, Store = userViewModelClient.Store, //Cart = repo.CreateOrder() }; List <CrustModel> crusts = _db.Crust.ToList(); List <SizeModel> sizes = _db.Size.ToList(); List <ToppingModel> toppings = _db.Topping.ToList(); List <StoreModel> stores = _db.Store.ToList(); userViewModel.SpecialtyPizzas = repo.GetSpecialtyPizzas(); foreach (CrustModel crust in crusts) { userViewModel.Crusts.Add(crust.Name); } foreach (SizeModel size in sizes) { userViewModel.Sizes.Add(size.Name); } foreach (ToppingModel topping in toppings) { userViewModel.Toppings.Add(topping.Name); } foreach (StoreModel store in stores) { userViewModel.Stores.Add(store.Name); } /* userViewModel.AddToppingToList("Pepperoni"); * userViewModel.AddToppingToList("Bacon"); * userViewModel.AddToppingToList("Pineapple"); * * userViewModel.AddSelectedTopping("Pepperoni"); * userViewModel.AddSelectedTopping("Bacon"); * userViewModel.AddSelectedTopping("Pineapple"); */ OrderModel cart = new OrderModel(); XmlSerializer serializer = new XmlSerializer(cart.GetType()); using (StringWriter sw = new StringWriter()){ serializer.Serialize(sw, cart); TempData["cart"] = sw.ToString(); } userViewModel.Cart = cart; TempData["username"] = userViewModel.User.Login.Username; TempData["password"] = userViewModel.User.Login.Password; TempData.Keep(); return(View("Create", userViewModel)); }
public UserViewModelClient InitUser(string username, string password, int orderid) { UserViewModelClient User = new UserViewModelClient(); int loginId = db.Login.FirstOrDefault(u => u.Username.Equals(username) && u.Password.Equals(password)).Id; User.User = db.User.FirstOrDefault(u => u.Login.Id == loginId); Console.WriteLine("INIT USER: "******"Pizza.Crust").Include("Pizza.Size").ToList(); * * foreach (OrderPizzas orderPizza in orderPizzas2){ * * PizzaModel pizza = orderPizza.Pizza; * List<ToppingModel> toppings = new List<ToppingModel>(); * List<PizzaToppings> pizzaToppings = db.PizzaToppings.Where(pt => pt.PizzaId == pizza.Id).Include("Topping").ToList(); * Console.WriteLine(pizzaToppings.Count); * foreach (PizzaToppings topping in pizzaToppings){ * * toppings.Add(topping.Topping); * * } * * pizza.Toppings = toppings; * pizzas2.Add(pizza); * * * } * User.Cart.Pizzas = pizzas2; * db.SaveChanges(); */ //Console.WriteLine("INIT USER NUMBER IN CART: " + User.Cart.Pizzas.Count); foreach (OrderModel order in User.Orders) { List <PizzaModel> pizzas = new List <PizzaModel>(); List <OrderPizzas> orderPizzas = db.OrderPizzas.Where(op => op.OrderId == order.Id).Include("Pizza.Crust").Include("Pizza.Size").ToList(); foreach (OrderPizzas orderPizza in orderPizzas) { PizzaModel pizza = orderPizza.Pizza; List <ToppingModel> toppings = new List <ToppingModel>(); List <PizzaToppings> pizzaToppings = db.PizzaToppings.Where(pt => pt.PizzaId == pizza.Id).Include("Topping").ToList(); Console.WriteLine(pizzaToppings.Count); foreach (PizzaToppings topping in pizzaToppings) { toppings.Add(topping.Topping); } pizza.Toppings = toppings; pizzas.Add(pizza); } order.Pizzas = pizzas; } return(User); }
public UserViewModelClient InitUser(string username, string password) { UserViewModelClient User = new UserViewModelClient(); int loginId = db.Login.FirstOrDefault(u => u.Username.Equals(username) && u.Password.Equals(password)).Id; User.User = db.User.FirstOrDefault(u => u.Login.Id == loginId); Console.WriteLine("INIT USER: "******"Store").Include("User").ToList(); //User.Orders = db.Order.Include(pizzas => db.Pizza.Include(db.Size.Include(db.Crust.Include(db.Topping)))); /* List<OrderModel> cart = db.Order.Where(o => o.User.Id == User.User.Id && !o.Placed).ToList(); * * * if (cart.Count == 0){ * * OrderModel neworder = new OrderModel(); * PlaceOrder(neworder); * User.Cart = neworder; * * } else { * * List<PizzaModel> pizzas = new List<PizzaModel>(); * List<OrderPizzas> orderPizzas = db.OrderPizzas.Where(op => op.OrderId == cart[0].Id).Include("Pizza.Crust").Include("Pizza.Size").ToList(); * foreach (OrderPizzas orderPizza in orderPizzas){ * * PizzaModel pizza = orderPizza.Pizza; * List<ToppingModel> toppings = new List<ToppingModel>(); * List<PizzaToppings> pizzaToppings = db.PizzaToppings.Where(pt => pt.PizzaId == pizza.Id).Include("Topping").ToList(); * Console.WriteLine(pizzaToppings.Count); * foreach (PizzaToppings topping in pizzaToppings){ * * toppings.Add(topping.Topping); * * } * * pizza.Toppings = toppings; * pizzas.Add(pizza); * * * } * * User.Cart = cart[0]; * * User.Cart.Pizzas = pizzas; * Console.WriteLine("INIT USER PIZZA COUNT: " + pizzas.Count); * * } */ foreach (OrderModel order in User.Orders) { List <PizzaModel> pizzas = new List <PizzaModel>(); List <OrderPizzas> orderPizzas = db.OrderPizzas.Where(op => op.OrderId == order.Id).Include("Pizza.Crust").Include("Pizza.Size").ToList(); foreach (OrderPizzas orderPizza in orderPizzas) { PizzaModel pizza = orderPizza.Pizza; List <ToppingModel> toppings = new List <ToppingModel>(); List <PizzaToppings> pizzaToppings = db.PizzaToppings.Where(pt => pt.PizzaId == pizza.Id).Include("Topping").ToList(); Console.WriteLine(pizzaToppings.Count); foreach (PizzaToppings topping in pizzaToppings) { toppings.Add(topping.Topping); } pizza.Toppings = toppings; pizzas.Add(pizza); } order.Pizzas = pizzas; } return(User); }