public void UpdatePizza(CreatePizzaViewModel pizza) { var ingredients = new List <Ingredient>(); foreach (var selectedIngredient in pizza.SelectedIngredients) { var ingredient = _ingredientRepository.GetById(selectedIngredient); if (ingredient == null) { throw new Exception($"Ingredient with Id {selectedIngredient} does not exist"); } ingredients.Add(ingredient); } var pizzaModel = _pizzaRepository.GetById(pizza.Id); pizzaModel.Name = pizza.Name; pizzaModel.Description = pizza.Description; pizzaModel.BasePrice = pizza.BasePrice; _pizzaIngredientRepository.RemoveAllPizzaIngredients(pizza.Id); foreach (var ingredient in ingredients) { pizzaModel.PizzaIngredients.Add(new PizzaIngredient { Pizza = pizzaModel, Ingredient = ingredient }); } _pizzaRepository.Update(pizzaModel); }
public IActionResult Create(CreatePizzaViewModel model) { if (ModelState.IsValid) { int count = _pizzaService.AddPizza(model); return(RedirectToAction("index")); } return(View()); }
public async Task <IActionResult> Index() { Klientas user = await userManager.GetUserAsync(User); string id = user?.Id; CreatePizzaViewModel model = new CreatePizzaViewModel(); model.Padas = _context.Padas.ToList(); return(View(model)); }
//[ServiceFilter(typeof(ValidationFilter))] public IActionResult Create(CreatePizzaViewModel model) { //not needed anymore, validation done with ValidationFilter registered globally //if (ModelState.IsValid) //{ int count = _pizzaService.AddPizza(model); return(RedirectToAction("index")); //} //return View(); }
public int AddPizza(CreatePizzaViewModel pizza) { var newPizza = new Pizza(); newPizza.Name = pizza.Name; newPizza.PizzaTypeId = pizza.PizzaTypeId; newPizza.Price = pizza.Price; newPizza.Size = pizza.Size; var added = _pizzaRepository.Insert(newPizza); return(added); }
public async Task <IActionResult> Create(CreatePizzaViewModel model) { Klientas user = await userManager.GetUserAsync(User); string id = user?.Id; var entities = new restaurant_dbContext(); var ingrendientai = from s in _context.Ingredientai select s; CreateViewModel viewModel = new CreateViewModel(); viewModel.ingredientai = entities.Ingredientai.ToList(); viewModel.ingredientoTipai = entities.IngredientoTipas.ToList(); viewModel.picos = entities.Pica.ToList(); int newPizzaId; string apr; if (ModelState.IsValid) { if (model.Aprasymas == null) { apr = ""; } else { apr = model.Aprasymas; } var newPizza = new Pica { Pavadinimas = model.Pavadinimas, Aprasymas = apr, Kaina = 0, Tipas = 4, Padas = model.padas, Nuotrauka = "/images/userCreated.png", Klientas = id }; _context.Add(newPizza); await _context.SaveChangesAsync(); newPizzaId = newPizza.Id; return(RedirectToAction("Edit", new { id = newPizzaId })); } model.Padas = _context.Padas.ToList(); return(View("Index", model)); }
public IActionResult Create(CreatePizzaViewModel model) { if (ModelState.IsValid) { var pizza = new Pizza(); pizza.Name = model.Name; pizza.PizzaTypeId = model.PizzaTypeId; pizza.Size = model.Size; pizza.Price = model.Price; pizzas.Add(pizza); return(RedirectToAction("Index")); } return(View("Create")); }
public ActionResult Edit(CreatePizzaViewModel pizza, string Url) { ViewBag.URL = Url; if (ModelState.IsValid) { repository.UpdatePizza(pizza); if (ViewBag.URL.ToString().Contains("MyPizzas")) { return(RedirectToAction("MyPizzas")); } return(RedirectToAction("Index")); } return(View(setupCreateOrEditViewModel(pizza.PizzaId))); }
public IActionResult Create(CreatePizzaViewModel model) { if (ModelState.IsValid) { Pizza pizza = new Pizza(); pizza.Name = model.Name; pizza.PizzaTypeID = model.PizzaTypeID; pizza.Price = model.Price; pizza.Size = model.Size; pizzas.Add(pizza); int count = pizzas.GetAll().Count(); return(RedirectToAction("index")); } return(View()); }
public void UpdatePizza(CreatePizzaViewModel viewModel) { var dbPizza = db.Pizzas.Find(viewModel.PizzaId); dbPizza.Name = viewModel.Name; dbPizza.IncomeCoeficient = viewModel.IncomeCoef; dbPizza.Size = viewModel.Size; db.Entry(dbPizza).Collection(p => p.Ingredients).Load(); var newIngredients = db.Ingredients.Where(ing => viewModel.selectedIngredients.Contains(ing.IngredientId.ToString())).ToList(); dbPizza.Ingredients = newIngredients; dbPizza.Price = newIngredients.Select(x => x.toIngredientDto()).Sum(x => x.getPriceForIngredientInSmallPizza()) * dbPizza.IncomeCoeficient; db.SaveChanges(); }
public ActionResult Create(CreatePizzaViewModel pizzaResponse, HttpPostedFileBase file) { if (ModelState.IsValid) { if (file != null) { string pic = Path.GetFileName(file.FileName); string path = Path.Combine( Server.MapPath("~/Content/Images"), pic); // file is uploaded file.SaveAs(path); // save the image path path to the database or you can send image // directly to database // in-case if you want to store byte[] ie. for DB using (MemoryStream ms = new MemoryStream()) { file.InputStream.CopyTo(ms); byte[] array = ms.GetBuffer(); } pizzaResponse.ImgUrl = "/Content/Images/" + pic; } else { pizzaResponse.ImgUrl = "/Content/Images/CustomPizza.png"; } repository.CreatePizzaForUser(pizzaResponse, User.Identity.GetUserId()); if (User.IsInRole(UserRoles.User)) { ViewBag.Title = "These are your custom pizzas"; return(RedirectToAction("MyPizzas")); } ViewBag.Title = "Barka 5's Menu"; return(RedirectToAction("Index")); } foreach (var TypeOfIngredient in Enum.GetValues(typeof(IngredientType))) { pizzaResponse.TypeIngredientListPairs.Add(TypeOfIngredient.ToString(), repository.GetIngredientsByType((IngredientType)TypeOfIngredient)); } return(View(pizzaResponse)); }
public void CreatePizzaForUser(CreatePizzaViewModel pizza, string userFk) { var ing = db.Ingredients.Where(x => pizza.selectedIngredients.Contains(x.IngredientId.ToString())).ToList(); Pizza dbPizza = new Pizza { PizzaId = Guid.NewGuid(), Name = pizza.Name, IncomeCoeficient = pizza.IncomeCoef, Ingredients = ing, Price = ing.Select(x => x.toIngredientDto()).Sum(x => x.getPriceForIngredientInSmallPizza()) * pizza.IncomeCoef, Orders = new List <PizzaOrder>(), ImgUrl = pizza.ImgUrl, Size = pizza.Size, User = db.Users.Find(userFk) }; db.Pizzas.Add(dbPizza); db.SaveChanges(); }
public IActionResult Create(CreatePizzaViewModel pizza) { if (!HttpContext.User.HasClaim(ClaimTypes.Role, "Administrator")) { RedirectToAction("Menu", "Pizza"); } if (!ModelState.IsValid) { pizza.AllIngredients = _ingredientService.GetIngredientsSelectList(); return(View(pizza)); } if (pizza.Id == 0) { _pizzaService.CreatePizza(pizza); } else { _pizzaService.UpdatePizza(pizza); } return(RedirectToAction("Menu", "Pizza")); }
private CreatePizzaViewModel setupCreateOrEditViewModel(Guid?id) { CreatePizzaViewModel viewModel = new CreatePizzaViewModel(); if (id != null) { var a = id; var pizzaToEdit = repository.GetPizza(id); viewModel.PizzaId = id; foreach (var TypeOfIngredient in Enum.GetValues(typeof(IngredientType))) { viewModel.TypeIngredientListPairs.Add(TypeOfIngredient.ToString(), repository.GetIngredientsByType((IngredientType)TypeOfIngredient)); } viewModel.selectedIngredients = repository.GetIngredientsForPizza(id) .Select(x => x.IngredientId.ToString()) .ToList(); viewModel.Name = pizzaToEdit.Name; viewModel.IncomeCoef = pizzaToEdit.incomeCoeficient; viewModel.Size = pizzaToEdit.Size; viewModel.ImgUrl = pizzaToEdit.ImgUrl; } else { foreach (var TypeOfIngredient in Enum.GetValues(typeof(IngredientType))) { viewModel.TypeIngredientListPairs.Add(TypeOfIngredient.ToString(), repository.GetIngredientsByType((IngredientType)TypeOfIngredient)); } } return(viewModel); }
public CreatePizzaView() { DataContext = new CreatePizzaViewModel(this); InitializeComponent(); }