コード例 #1
0
        public ActionResult <MainCategoryOutDto> Update(string id, [FromBody] MainCategoryCreateDto mainCategoryIn)
        {
            //Check if request is sent by admin.
            if (!AuthorizationHelpers.IsAdmin(HttpContext.User))
            {
                return(Unauthorized(new Message("Unauthorized user.")));
            }

            var mainCategory = _mainCategoryRepository.GetById(id);

            if (mainCategory == null)
            {
                return(NotFound(new Message("There is no main category with id: " + id)));
            }

            if (!string.IsNullOrEmpty(mainCategoryIn.Name))
            {
                mainCategory.Name = mainCategoryIn.Name;
            }

            if (_mainCategoryRepository.Update(mainCategory))
            {
                var mainCategoryOutDto = _mapper.Map <MainCategoryOutDto>(mainCategory);

                return(Ok(mainCategoryOutDto));
            }

            return(BadRequest(new Message("Error when updating main category with id: " + id)));
        }
コード例 #2
0
        public ActionResult <MainCategoryOutDto> Create([FromBody] MainCategoryCreateDto mainCategoryIn)
        {
            //Check if request is sent by admin.
            if (!AuthorizationHelpers.IsAdmin(HttpContext.User))
            {
                return(Unauthorized(new Message("Unauthorized user.")));
            }

            //Check if request is valid.
            if (string.IsNullOrEmpty(mainCategoryIn.Name))
            {
                return(BadRequest(new Message("Please give a valid name.")));
            }

            if (_mainCategoryRepository.Where(mc => mc.Name == mainCategoryIn.Name).Any())
            {
                return(BadRequest(new Message("There is already a main category with name: " + mainCategoryIn.Name)));
            }

            var mainCategory = _mapper.Map <MainCategory>(mainCategoryIn);

            if (_mainCategoryRepository.Add(mainCategory))
            {
                var mainCategoryOutDto = _mapper.Map <MainCategoryOutDto>(mainCategory);

                return(Ok(mainCategoryOutDto));
            }

            return(BadRequest(new Message("Error when creating main category")));
        }