Ejemplo n.º 1
0
 protected void UpdateAttributeValueLocales(CategoryProductAttributeValue pvav, CategoryProductAttributeValueModel model)
 {
     foreach (var localized in model.Locales)
     {
         _localizedEntityService.SaveLocalizedValue(pvav,
                                                    x => x.Name,
                                                    localized.Name,
                                                    localized.LanguageId);
     }
 }
Ejemplo n.º 2
0
        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));
        }
Ejemplo n.º 3
0
        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));
        }
Ejemplo n.º 4
0
        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);
            }
        }
Ejemplo n.º 5
0
 public static CategoryProductAttributeValue ToEntity(this CategoryProductAttributeValueModel model, CategoryProductAttributeValue destination)
 {
     return(Mapper.Map(model, destination));
 }
Ejemplo n.º 6
0
 public static CategoryProductAttributeValueModel ToModel(this CategoryProductAttributeValue entity)
 {
     return(Mapper.Map <CategoryProductAttributeValue, CategoryProductAttributeValueModel>(entity));
 }