private EditRecipeIngridientViewModel ParseRecipeIngridient(RecipeIngridient recipeIngridient, int recipeId) { EditRecipeIngridientViewModel editRecipeIngridientViewModel = new EditRecipeIngridientViewModel(); List <Ingridient> ingridients = _ingridientProvider.GetIngridients(); List <RecipeIngridientView> recipeIngridients = _recipeProvider.GetRecipeIngridientsByRecipeId(recipeId); editRecipeIngridientViewModel.RecipeId = recipeId; if (recipeIngridients != null) { foreach (RecipeIngridientView item in recipeIngridients) { Ingridient ingridient = ingridients.FirstOrDefault(i => i.IngridientId == item.IngridientId); if (ingridient != null) { ingridients.Remove(ingridient); } } } if (recipeIngridient != null) { editRecipeIngridientViewModel.IngridientId = recipeIngridient.IngridientId; editRecipeIngridientViewModel.Weight = recipeIngridient.Weight; editRecipeIngridientViewModel.Ingridients = new SelectList(ingridients, "IngridientId", "Name", recipeIngridient.IngridientId); } else { editRecipeIngridientViewModel.Ingridients = new SelectList(ingridients, "IngridientId", "Name"); } return(editRecipeIngridientViewModel); }
private RecipeIngridient ParseRecipeIngridient(EditRecipeIngridientViewModel editRecipeIngridientViewModel) { RecipeIngridient recipeIngridient = new RecipeIngridient(); if (editRecipeIngridientViewModel != null) { recipeIngridient.IngridientId = editRecipeIngridientViewModel.IngridientId; recipeIngridient.RecipeId = editRecipeIngridientViewModel.RecipeId; recipeIngridient.Weight = editRecipeIngridientViewModel.Weight; } return(recipeIngridient); }
public ActionResult AddOrEditRecipeIngridient(int recipeId, int ingridientId) { RecipeIngridientView recipeIngridient = null; if (ingridientId != 0) { recipeIngridient = _recipeProvider.GetRecipeIngridient(recipeId, ingridientId); } EditRecipeIngridientViewModel model = ParseRecipeIngridient(recipeIngridient, recipeId); if (Request.IsAjaxRequest()) { return(PartialView("_AddOrEditRecipeIngridient", model)); } else { return(View("AddOrEditRecipeIngridient", model)); } }
public ActionResult AddOrEditRecipeIngridient(EditRecipeIngridientViewModel editRecipeIngridientViewModel) { RecipeIngridient recipeIngridient = ParseRecipeIngridient(editRecipeIngridientViewModel); if (ModelState.IsValid) { if (_recipeProvider.IsInsertRecipeIngridient(editRecipeIngridientViewModel.RecipeId, editRecipeIngridientViewModel.IngridientId)) { _recipeProvider.InsertRecipeIngridient(recipeIngridient); } else { _recipeProvider.UpdateRecipeIngridient(recipeIngridient); } return(RedirectToAction("ShowIngridientsByRecipeId", new { @recipeId = editRecipeIngridientViewModel.RecipeId })); } else { editRecipeIngridientViewModel = ParseRecipeIngridient(recipeIngridient, recipeIngridient.RecipeId); return(View("AddOrEditRecipeIngridient", editRecipeIngridientViewModel)); } }