Exemple #1
0
        public HttpStatusCode CreateSubcategory(CreateSubcategoryDto createSubcategoryDto)
        {
            Category    category    = _ctx.Categories.FirstOrDefault(f => f.Id == createSubcategoryDto.CategoryId);
            Subcategory subcategory = _subcategoryFactory.SubcategoryToDbo(createSubcategoryDto);

            subcategory.Category   = category;
            subcategory.CategoryId = category.Id;

            List <SubcategoryAttribute> subcategoryAttributes = new List <SubcategoryAttribute>();
            var attributeGroupsIds = createSubcategoryDto.SubcategoiresIds.ToList();

            attributeGroupsIds.ForEach(id =>
            {
                subcategoryAttributes.Add(new SubcategoryAttribute()
                {
                    Subcategory      = subcategory,
                    AttributeGroupId = id,
                });
            });

            subcategory.SubcategoryAttributes = subcategoryAttributes;

            try
            {
                _ctx.Subcategories.Add(subcategory);
                _ctx.SaveChanges();

                return(HttpStatusCode.OK);
            }
            catch (Exception ex)
            {
                return(HttpStatusCode.InternalServerError);
            }
        }
Exemple #2
0
        public Subcategory SubcategoryToDbo(CreateSubcategoryDto createSubcategoryDto)
        {
            var model = new Subcategory()
            {
                Name         = createSubcategoryDto.SubcategoryName,
                IsPublished  = createSubcategoryDto.IsPublished,
                CreationDate = DateTime.Now
            };

            return(model);
        }
        public HttpStatusCode CreateSubcategory(CreateSubcategoryDto createSubcategoryDto)
        {
            var response = _subcategoryRepository.CreateSubcategory(createSubcategoryDto);

            switch (response)
            {
            case HttpStatusCode.OK:
                return(HttpStatusCode.OK);

            case HttpStatusCode.InternalServerError:
                return(HttpStatusCode.InternalServerError);

            default:
                return(HttpStatusCode.NotFound);
            }
        }