예제 #1
0
        public async Task <SubcategoryShortDTO> UpdateAsync(SubcategoryShortDTO subcategoryDTO)
        {
            var subcategory = await _unitOfWork.SubcategoryRepository.GetByIdAsync(subcategoryDTO.Id);

            subcategory.Icon        = subcategoryDTO.Icon;
            subcategory.Name        = subcategoryDTO.Name;
            subcategory.Description = subcategoryDTO.Description;
            subcategory.Tags        = subcategoryDTO.Tags;

            _unitOfWork.SubcategoryRepository.Update(subcategory);
            await _unitOfWork.SaveAsync();

            return(subcategoryDTO);
        }
예제 #2
0
        public async Task <SubcategoryShortDTO> CreateAsync(long categoryId, SubcategoryShortDTO subcategoryDTO)
        {
            var category = await _unitOfWork.CategoryRepository.GetByIdAsync(categoryId);

            var subcategory = new Subcategory
            {
                Description = subcategoryDTO.Description,
                Icon        = subcategoryDTO.Icon,
                IsDeleted   = false,
                Name        = subcategoryDTO.Name,
                Works       = new List <Work>(),
                Tags        = "",
                Category    = category
            };

            _unitOfWork.SubcategoryRepository.Create(subcategory);
            await _unitOfWork.SaveAsync();

            subcategoryDTO.Id = subcategory.Id;

            return(subcategoryDTO);
        }
        public async Task <HttpResponseMessage> CreateSubcategory(long id, [FromBody] SubcategoryShortDTO dto)
        {
            var result = await _subcategoryService.CreateAsync(id, dto);

            return(Request.CreateResponse(HttpStatusCode.OK, result));
        }
        public async Task <HttpResponseMessage> UpdateSubcategory(long categoryId, long id, [FromBody] SubcategoryShortDTO dto)
        {
            var result = await _subcategoryService.UpdateAsync(dto);

            if (result == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            return(Request.CreateResponse(HttpStatusCode.OK, result));
        }