public IActionResult Post(CreateAreaDTO areaDTO) { if (ModelState.IsValid == false) { return(BadRequest(ModelState)); } try { if (_areaAppServices.CheckExistsByName(areaDTO.Name)) { return(BadRequest("The Area Is Already Exist")); } } catch (Exception ex) { return(BadRequest(ex.Message)); } try { CreateAreaDTO newAreaDTO; string userRole = HttpContext.User.FindFirst(ClaimTypes.Role).Value; if (userRole == UserRoles.Admin) { newAreaDTO = _areaAppServices.Insert(areaDTO, true); } else { newAreaDTO = _areaAppServices.Insert(areaDTO, false); } _generalAppService.CommitTransaction(); return(Created("Area created", newAreaDTO)); } catch (Exception ex) { _generalAppService.RollbackTransaction(); return(BadRequest(ex.Message)); } }
public CreateAreaDTO Insert(CreateAreaDTO areaDTO, bool byAdmin) { if (areaDTO == null) { throw new ArgumentNullException(); } Area area = Mapper.Map <Area>(areaDTO); area.ByAdmin = byAdmin; TheUnitOfWork.AreaRepo.Insert(area); TheUnitOfWork.SaveChanges(); areaDTO.ID = area.ID; areaDTO.ByAdmin = byAdmin; return(areaDTO); }