Exemple #1
0
        public int?Create(NewProductGroupViewModel productGroup)
        {
            if (ModelState.IsValid)
            {
                var product = _repo.AddNewProductGroup(productGroup.ParentGroupId, productGroup.Title, productGroup.BrandIds, productGroup.ProductGroupFeatureIds);
                return(product.Id);
            }

            return(null);
        }
        public int?Create(NewProductGroupViewModel newProductGroup)
        {
            if (ModelState.IsValid)
            {
                var productGroup = new ProductGroup();

                #region Adding Product Group
                productGroup.GroupName = newProductGroup.GroupName;
                if (newProductGroup.ParentGroupId != 0)
                {
                    productGroup.ParentId = newProductGroup.ParentGroupId;
                }
                db.ProductGroups.Add(productGroup);
                db.SaveChanges();
                #endregion

                #region Adding Product Group Brands

                foreach (var brandId in newProductGroup.BrandIds)
                {
                    var productGroupBrand = new ProductGroupBrand();
                    productGroupBrand.ProductGroupId = productGroup.Id;
                    productGroupBrand.BrandId        = brandId;
                    db.ProductGroupBrands.Add(productGroupBrand);
                }
                db.SaveChanges();

                #endregion
                #region Adding product Group Features
                foreach (var featureId in newProductGroup.ProductGroupFeatureIds)
                {
                    var productGroupFeature = new ProductGroupFeature();
                    productGroupFeature.ProductGroupId = productGroup.Id;
                    productGroupFeature.FeatureId      = featureId;
                    db.ProductGroupFeatures.Add(productGroupFeature);
                }

                db.SaveChanges();
                #endregion
                return(productGroup.Id);
            }

            return(null);
        }