public async Task <SubCategoryDTO> Add(SubCategoryAddRequest model) { var oSubCategory = _mapper.Map <SubCategory>(model); if (await _repository.Add(oSubCategory)) { return(_mapper.Map <SubCategoryDTO>(oSubCategory)); } return(null); }
public async Task <IActionResult> AddCategory(SubCategoryAddRequest model) { Response oR = new Response(); try { if (!ModelState.IsValid) { oR.Status = StatusCodes.Status400BadRequest; oR.Message = Messages.ValidationsFailed; oR.Data = GetModelErrors(ModelState); return(BadRequest(oR)); } if (!await _service.ExistsName(model.CategoryId, model.Name)) { ModelState.AddModelError("Name", Messages.ResourceNameAlreadyExists); oR.Status = StatusCodes.Status400BadRequest; oR.Message = Messages.ValidationsFailed; oR.Data = GetModelErrors(ModelState); return(BadRequest(oR)); } var oCategory = await _service.Add(model); if (oCategory != null) { oR.Status = StatusCodes.Status201Created; oR.Data = oCategory; return(CreatedAtAction(nameof(GetById), new { id = oCategory.Id }, oR)); } else { oR.Status = StatusCodes.Status500InternalServerError; oR.Message = Messages.InternalServerError; return(StatusCode(StatusCodes.Status500InternalServerError, oR)); } } catch (Exception ex) { oR.Status = StatusCodes.Status500InternalServerError; oR.Message = Messages.InternalServerError; return(StatusCode(StatusCodes.Status500InternalServerError, oR)); } }