/// <summary> /// <inheritdoc /> /// </summary> /// <param name="model"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public virtual async Task <Responsibility> AddResponsibilityAsync(AddResponsibilityViewModel model, CancellationToken cancellationToken = default(CancellationToken)) { // Check exists responsibility var responsibilities = _unitOfWork.Responsibilities.Search(); responsibilities = responsibilities.Where(x => x.Name.Equals(model.Name)); var responsibility = await responsibilities.FirstOrDefaultAsync(cancellationToken); if (responsibility != null) { throw new HttpException((int)HttpStatusCode.Conflict, HttpMessages.ResponsibilityAlreadyAvailable); } //Inital responsibility object responsibility = new Responsibility(); responsibility.Name = model.Name; responsibility.CreatedTime = DateTime.Now.ToOADate(); //Add responsibility to database _unitOfWork.Responsibilities.Insert(responsibility); //Save changes to database await _unitOfWork.CommitAsync(); return(responsibility); }
public async Task <Responsibility> AddResponsibilityAsync(AddResponsibilityViewModel model, CancellationToken cancellationToken = default(CancellationToken)) { //Check exists responsibility var isExists = await _dbContext.Responsibilities.AnyAsync(c => c.Name == model.Name, cancellationToken); if (isExists) { throw new Exception(); } //Inital responsibility object var responsibility = new Responsibility(); responsibility.Name = model.Name; responsibility.CreatedTime = DateTime.Now.ToOADate(); //Add responsibility to database responsibility = _dbContext.Responsibilities.Add(responsibility); //Save changes to database await _dbContext.SaveChangesAsync(cancellationToken); return(responsibility); }
public async Task <IHttpActionResult> AddResponsibility([FromBody] AddResponsibilityViewModel model) { if (model == null) { model = new AddResponsibilityViewModel(); Validate(model); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var responsibility = await _responsibilityService.AddResponsibilityAsync(model); return(Ok(responsibility)); }
public async Task <IHttpActionResult> AddResponsibility([FromBody] AddResponsibilityViewModel model) { if (model == null) { model = new AddResponsibilityViewModel(); Validate(model); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //Check exists responsibility var responsibilities = _unitOfWork.Responsibilities.Search(); responsibilities = responsibilities.Where(x => x.Name.Equals(model.Name)); var responsibility = await responsibilities.FirstOrDefaultAsync(); if (responsibility != null) { return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.Conflict, HttpMessages.ResponsibilityAlreadyAvailable))); } //Inital responsibility object responsibility = new Responsibility(); responsibility.Name = model.Name; responsibility.CreatedTime = DateTime.Now.ToOADate(); //Add responsibility to database _unitOfWork.Responsibilities.Insert(responsibility); //Save changes to database await _unitOfWork.CommitAsync(); return(Ok(responsibility)); }