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))); }
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"))); }