public ActionResult Create(Guid productsAttributesId) { ProductAttributeOptions option = new ProductAttributeOptions(); option.ProductsAttributesId = productsAttributesId; return(PartialView("_Create", option)); }
public ActionResult Create(ProductsAttributeViewModel viewModel, string[] AttributeOptions) { if (ModelState.IsValid) { ProductsAttribute productAttribute = new ProductsAttribute(); Guid attributeId = Guid.NewGuid(); productAttribute.Id = attributeId; productAttribute.Name = viewModel.Name; _dbContext.ProductsAttributes.Add(productAttribute); var attributeOptionsList = _dbContext.ProductAttributeOptions; if (AttributeOptions != null) { foreach (var option in AttributeOptions) { ProductAttributeOptions attributeOption = new ProductAttributeOptions(); attributeOption.Id = Guid.NewGuid(); attributeOption.ProductsAttributesId = attributeId; attributeOption.Name = option; // ProductAttributeOptions retriveAttributeOption = attributeOptionsList.Where(t => t.Name == tag).FirstOrDefault(); // newBlog.Tags.Add(retriveTag); _dbContext.ProductAttributeOptions.Add(attributeOption); } } _dbContext.SaveChanges(); return(RedirectToAction("Index")); } return(View(viewModel)); }
public ActionResult DeleteConfirmed(Guid id) { ProductAttributeOptions productAttributeOptions = _dbContext.ProductAttributeOptions.Find(id); _dbContext.ProductAttributeOptions.Remove(productAttributeOptions); _dbContext.SaveChanges(); return(Json(new { success = true })); }
public ActionResult Edit(ProductAttributeOptions productAttributeOptions) { if (ModelState.IsValid) { _dbContext.Entry(productAttributeOptions).State = EntityState.Modified; _dbContext.SaveChanges(); return(Json(new { success = true })); } return(View(productAttributeOptions)); }
public ActionResult Create(ProductAttributeOptions productAttributeOptions) { if (ModelState.IsValid) { productAttributeOptions.Id = Guid.NewGuid(); _dbContext.ProductAttributeOptions.Add(productAttributeOptions); _dbContext.SaveChanges(); return(Json(new { success = true })); } return(View(productAttributeOptions)); }
public ActionResult Create(ProductCategoryViewModel viewModel, string[] AttributeOptions) { if (ModelState.IsValid) { try { ValidateParentsAreParentless(viewModel); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); ViewBag.ParentCategoryIdSelectList = PopulateParentCategorySelectList(null); return(View(viewModel)); } ProductCategory category = new ProductCategory(); category.Id = Guid.NewGuid(); category.ParentCategoryId = viewModel.ParentCategoryId; category.Name = viewModel.Name; _dbContext.ProductCategories.Add(category); if (viewModel.AttributeName != null) { ProductsAttribute productAttribute = new ProductsAttribute(); Guid attributeId = Guid.NewGuid(); productAttribute.Id = attributeId; productAttribute.Name = viewModel.AttributeName; _dbContext.ProductsAttributes.Add(productAttribute); var attributeOptionsList = _dbContext.ProductAttributeOptions; if (AttributeOptions != null) { foreach (var option in AttributeOptions) { ProductAttributeOptions attributeOption = new ProductAttributeOptions(); attributeOption.Id = Guid.NewGuid(); attributeOption.ProductsAttributesId = attributeId; attributeOption.Name = option; _dbContext.ProductAttributeOptions.Add(attributeOption); } } // category.ProductsAttributes.Add(productAttribute); } _dbContext.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ParentCategoryIdSelectList = PopulateParentCategorySelectList(null); return(View(viewModel)); }
public ActionResult Delete(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductAttributeOptions productAttributeOptions = _dbContext.ProductAttributeOptions.Find(id); if (productAttributeOptions == null) { return(HttpNotFound()); } return(PartialView("_Delete", productAttributeOptions)); }
public ActionResult Edit(ProductCategoryViewModel productCategoryViewModel, string[] AttributeOptions) { if (ModelState.IsValid) { ProductCategory productCategory = _dbContext.ProductCategories.Find(productCategoryViewModel.Id); productCategory.Name = productCategoryViewModel.Name; productCategory.ParentCategoryId = productCategoryViewModel.ParentCategoryId; _dbContext.Entry(productCategory).State = EntityState.Modified; if (!string.IsNullOrEmpty(productCategoryViewModel.AttributeName)) { ProductsAttribute productAttribute = new ProductsAttribute(); Guid attributeId = Guid.NewGuid(); productAttribute.Id = attributeId; productAttribute.Name = productCategoryViewModel.AttributeName; _dbContext.ProductsAttributes.Add(productAttribute); productCategory.ProductsAttributes.Add(productAttribute); if (AttributeOptions != null) { foreach (var option in AttributeOptions) { if (option == "") { } else { ProductAttributeOptions attributeOption = new ProductAttributeOptions(); attributeOption.Id = Guid.NewGuid(); attributeOption.ProductsAttributesId = attributeId; attributeOption.Name = option; // ProductAttributeOptions retriveAttributeOption = attributeOptionsList.Where(t => t.Name == tag).FirstOrDefault(); // newBlog.Tags.Add(retriveTag); _dbContext.ProductAttributeOptions.Add(attributeOption); } } } } //foreach (var option in productsAttribute.ProductAttributeOptions.ToArray()) //{ // productsAttribute.ProductAttributeOptions.Remove(option); //} _dbContext.SaveChanges(); ViewBag.ParentCategoryIdSelectList = PopulateParentCategorySelectList(productCategoryViewModel.Id); TempData["MessageToClientSuccess"] = "SuccessFully Saved"; return(RedirectToAction("Edit", new { id = productCategoryViewModel.Id })); } return(View(productCategoryViewModel)); }
public ActionResult Edit(ProductViewModel viewModel, string[] AttributeSelectedOnView, Guid[] OptionsSelectedOnView, string[] CategorySelectedOnView) { if (ModelState.IsValid) { Product product = _dbContext.Products.Find(viewModel.Id); product.Name = viewModel.Name; product.Code = viewModel.Code; product.ModelNumber = viewModel.ModelNumber; product.Title = viewModel.Title; product.Discription = viewModel.Discription; product.Specifications = viewModel.Specifications; product.DiscountPerUnitInPercent = viewModel.DiscountPerUnitInPercent; product.SalePrice = viewModel.SalePrice; product.IsAvailableForSale = viewModel.IsAvailableForSale; product.Is_BestSeller = viewModel.Is_BestSeller; product.Is_NewArrival = viewModel.Is_NewArrival; product.ShowOnWebsite = viewModel.ShowOnWebsite; product.Is_FeaturedProduct = viewModel.Is_FeaturedProduct; if (viewModel.ModelNumber != null) { product.AutoGenerateName = viewModel.Code + "/" + viewModel.Name + "/" + viewModel.ModelNumber + " "; } else { product.AutoGenerateName = viewModel.Code + "/" + viewModel.Name + " "; } if (viewModel.MainImageNameFile != null) { string fName = ""; HttpPostedFileBase file = viewModel.MainImageNameFile; fName = viewModel.MainImageNameFile.FileName; string ImageNameWithOutExtention = System.IO.Path.GetFileNameWithoutExtension(fName); string extension = Path.GetExtension(fName); var originalDirectory = new DirectoryInfo(string.Format("{0}Images\\Upload", Server.MapPath(@"\"))); string pathString = System.IO.Path.Combine(originalDirectory.ToString(), product.ProductCategory.Name); var fileName1 = Path.GetFileName(file.FileName); bool isExists = System.IO.Directory.Exists(pathString); if (!isExists) { System.IO.Directory.CreateDirectory(pathString); } var path = string.Format("{0}\\{1}", pathString, file.FileName); file.SaveAs(path); var versions = new Dictionary <string, string>(); var imagePath = string.Format("{0}\\{1}", pathString, ImageNameWithOutExtention); versions.Add("_small", "maxwidth=100&maxheight=100&format=jpg"); versions.Add("_medium", "maxwidth=500&maxheight=500&format=jpg"); versions.Add("_large", "maxwidth=900&maxheight=900&format=jpg"); foreach (var suffix in versions.Keys) { file.InputStream.Seek(0, SeekOrigin.Begin); ImageBuilder.Current.Build( new ImageJob( file.InputStream, imagePath + suffix, new Instructions(versions[suffix]), false, true)); } product.ThumbMainImageName = ImageNameWithOutExtention; product.ImageExtention = extension; } // var productAttList = _dbContext.ProductsAttributes; // var productCategory = _dbContext.ProductCategories; //if (CategorySelectedOnView != null) //{ // foreach (var attr in product.ProductCategories.ToArray()) // { // product.ProductCategories.Remove(attr); // } // foreach (var att in CategorySelectedOnView) // { // ProductCategory category = productCategory.Where(pa => pa.Name == att).FirstOrDefault(); // // attr.Products.Add(product); // product.ProductCategories.Add(category); // } //} var productOptions = _dbContext.ProductAttributeOptions; string autoName = string.Empty; foreach (var option in product.ProductAttributeOptions) { ProductAttributeOptions productAttrOption = productOptions.Where(po => po.Id == option.Id).FirstOrDefault(); // product.ProductAttributeOptions.Remove(option); productAttrOption.Products.Remove(product); } _dbContext.Entry(product).State = EntityState.Modified; _dbContext.SaveChanges(); autoName += "("; if (OptionsSelectedOnView != null) { foreach (var option in OptionsSelectedOnView) { ProductAttributeOptions productAttrOption = productOptions.Where(po => po.Id == option).FirstOrDefault(); autoName += productAttrOption.ProductsAttribute.Name + "-" + productAttrOption.Name + "/"; product.ProductAttributeOptions.Add(productAttrOption); // productAttrOption.ProductsAttribute.Products.Add(product); } } autoName += ")"; product.AutoGenerateName = product.AutoGenerateName + autoName; _dbContext.Entry(product).State = EntityState.Modified; _dbContext.SaveChanges(); return(RedirectToAction("Index")); } return(View(viewModel)); }