public ActionResult Index() { var models = _productService.GetAllIngridients(); var model = new PrimaryRecipeDrugViewModel() { RecipeDrugViewModel = new RecipeDrugViewModel(), Ingridients = models }; return(View(model)); }
public ActionResult Index(PrimaryRecipeDrugViewModel model) { if (ModelState.IsValid) { var user = Session["User"] as UserModel; var recipeDrug = model.RecipeDrugViewModel; recipeDrug.Address = user.Address; recipeDrug.Ingridients = recipeDrug.Ingridients.Where(i => i.ProductID.HasValue).ToList(); if (recipeDrug.Ingridients.Count() < 1) { var ingModels = _productService.GetAllIngridients(); model.Ingridients = ingModels; model.RecipeDrugViewModel.PrepareIngridients(); ModelState.AddModelError(string.Empty, "Musisz wybrać jakieś składniki!"); return(View(model)); } var ingridients = _productService.GetAllIngridients(); var ingPrice = 0M; foreach (var ing in recipeDrug.Ingridients) { ing.Price = ing.Quantity * 0.01M * ingridients.First(i => i.ID == ing.ProductID).Price; ingPrice += ing.Price.Value; } var businessModel = model.RecipeDrugViewModel.ToBusinessModel(); businessModel.Package.Price = ingPrice + makingRecipeDrugPrice + Common.Enums.ShippingPrices.ShippingPrice(recipeDrug.Shipping); businessModel.EvaluatedDate = DateTime.Now; businessModel.UserID = user.ID; var insertedID = _recipeDrugService.Add(businessModel); return(Payment(insertedID.Value)); } var models = _productService.GetAllIngridients(); model.Ingridients = models; return(View(model)); }