protected void UpdateAttributeValueLocales(CategoryProductAttributeValue pvav, CategoryProductAttributeValueModel model) { foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(pvav, x => x.Name, localized.Name, localized.LanguageId); } }
public ActionResult CategoryProductAttributeValueCreatePopup(string btnId, string formId, CategoryProductAttributeValueModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog)) { return(AccessDeniedView()); } var pva = _categoryProductAttributeService.GetCategoryProductAttributeById(model.CategoryProductAttributeId); if (pva == null) { //No product variant attribute found with the specified id return(RedirectToAction("List", "Product")); } if (ModelState.IsValid) { var pvav = new CategoryProductAttributeValue() { CategoryProductAttributeId = model.CategoryProductAttributeId, Name = model.Name, ColorSquaresRgb = model.ColorSquaresRgb, //PriceAdjustment = model.PriceAdjustment, //WeightAdjustment = model.WeightAdjustment, IsPreSelected = model.IsPreSelected, DisplayOrder = model.DisplayOrder, PopularValue = model.Popularvalue }; if (model.Realvalue.HasValue) { pvav.RealValue = model.Realvalue; if (String.IsNullOrEmpty(model.Name)) { pvav.Name = ((int)model.Realvalue).ToString(); } } _categoryProductAttributeService.InsertCategoryProductAttributeValue(pvav); UpdateAttributeValueLocales(pvav, model); ViewBag.RefreshPage = true; ViewBag.btnId = btnId; ViewBag.formId = formId; return(View(model)); } //If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult CopyAttributePopUp(CategoryAttributeCopyModel model, string btnId, string formId) { var categoryProductAttributeGroup = _categoryProductAttributeService.GetCategoryProductAttributeGroupById(model.CategoryProductAttributeGroupId); var categoryProductAttribute = _categoryProductAttributeService.GetCategoryProductAttributeById(model.CategoryProductAttributeId); string attributeName = categoryProductAttribute.ProductAttribute.Name; var sourceCategoryProductAttribute = categoryProductAttributeGroup.CategoryProductAttributes.Where(x => x.ProductAttribute.Name == attributeName).FirstOrDefault(); if (sourceCategoryProductAttribute == null) { ModelState.AddModelError("CategoryProductAttributeGroupId", _localizationService.GetResource("")); } foreach (var val in categoryProductAttribute.CategoryProductAttributeValues.ToList()) { _categoryProductAttributeService.DeleteCategoryProductAttributeValue(val); } var values = categoryProductAttributeGroup.CategoryProductAttributes.Where(x => x.ProductAttribute.Name == attributeName).FirstOrDefault().CategoryProductAttributeValues; foreach (var val in values) { var newAttributeValue = new CategoryProductAttributeValue() { CategoryProductAttributeId = categoryProductAttribute.Id, DisplayOrder = val.DisplayOrder, IsPreSelected = val.IsPreSelected, Name = val.Name, ColorSquaresRgb = val.ColorSquaresRgb, CurrencyId = val.CurrencyId, PopularValue = val.PopularValue, RealValue = val.RealValue, RealValueMax = val.RealValueMax, }; _categoryProductAttributeService.InsertCategoryProductAttributeValue(newAttributeValue); } var categoryProductAttributeGroups = _categoryProductAttributeService.GetAllCategoryProductAttributeGroups(); model.AviableGroups = categoryProductAttributeGroups.Select(x => new SelectListItem() { Value = x.Id.ToString(), Text = x.GetLocalized(c => c.Name, _workContext.WorkingLanguage.Id) }).ToList(); ViewBag.RefreshPage = true; ViewBag.btnId = btnId; ViewBag.formId = formId; return(View(model)); }
private void UpdateDb(List <ExportCategory> categoryList, List <ExportProductAttributeValueList> productAttributeValueLists, List <ExportProductAttribute> productAttributeList) { foreach (var attr in productAttributeList) { var productAttribute = new ProductAttribute() { Name = attr.Name }; _productAttributeService.InsertProductAttribute(productAttribute); _localizedEntityService.SaveLocalizedValue(productAttribute, x => x.Name, attr.Name, 1); _localizedEntityService.SaveLocalizedValue(productAttribute, x => x.Name, attr.NameRu, 2); _localizedEntityService.SaveLocalizedValue(productAttribute, x => x.Name, attr.NameDe, 3); _localizedEntityService.SaveLocalizedValue(productAttribute, x => x.Name, attr.NameEs, 4); attr.RecievedId = productAttribute.Id; } foreach (var attributeGroup in productAttributeValueLists) { var group = new CategoryProductAttributeGroup() { Name = attributeGroup.Name }; _categoryProductAttributeService.InsertCategoryProductAttributeGroup(group); _localizedEntityService.SaveLocalizedValue(group, x => x.Name, attributeGroup.Name, 1); _localizedEntityService.SaveLocalizedValue(group, x => x.Name, attributeGroup.NameRu, 2); _localizedEntityService.SaveLocalizedValue(group, x => x.Name, attributeGroup.NameDe, 3); _localizedEntityService.SaveLocalizedValue(group, x => x.Name, attributeGroup.NameEs, 4); attributeGroup.RecievedId = group.Id; var attrs = attributeGroup.List.GroupBy(x => x.AttributeTitle); foreach (var attr in attrs) { int productAttributeId = productAttributeList.Where(x => x.Name == attr.Key).First().RecievedId; var categoryProductAttribute = new CategoryProductAttribute() { AttributeControlTypeId = (int)AttributeControlType.Checkboxes, CategoryProductGroupId = group.Id, DisplayOrder = 0, IsRequired = false, ProductAttributeId = productAttributeId }; _categoryProductAttributeService.InsertCategoryProductAttribute(categoryProductAttribute); foreach (var value in attr) { var categoryProductAttributeValue = new CategoryProductAttributeValue() { DisplayOrder = 0, CategoryProductAttributeId = categoryProductAttribute.Id, Name = value.Title, IsPreSelected = false }; _categoryProductAttributeService.InsertCategoryProductAttributeValue(categoryProductAttributeValue); _localizedEntityService.SaveLocalizedValue(categoryProductAttributeValue, x => x.Name, value.Title, 1); _localizedEntityService.SaveLocalizedValue(categoryProductAttributeValue, x => x.Name, value.TitleRu, 2); _localizedEntityService.SaveLocalizedValue(categoryProductAttributeValue, x => x.Name, value.TitleDe, 3); _localizedEntityService.SaveLocalizedValue(categoryProductAttributeValue, x => x.Name, value.TitleEs, 4); } } } foreach (var category in categoryList.Where(x => x.ParentCategoryId == 0)) { InsertChildCategories(category, categoryList, productAttributeValueLists); } }
public static CategoryProductAttributeValue ToEntity(this CategoryProductAttributeValueModel model, CategoryProductAttributeValue destination) { return(Mapper.Map(model, destination)); }
public static CategoryProductAttributeValueModel ToModel(this CategoryProductAttributeValue entity) { return(Mapper.Map <CategoryProductAttributeValue, CategoryProductAttributeValueModel>(entity)); }