public async Task<IHttpActionResult> CreateSpecialized([FromBody] AddSpecializedViewModel info) { #region Parameter validation if (info == null) { info = new AddSpecializedViewModel(); Validate(info); } if (!ModelState.IsValid) return BadRequest(ModelState); #endregion var specializeds = UnitOfWork.RepositorySpecialized.Search(); specializeds = specializeds.Where(x => x.Name.Equals(info.Name, StringComparison.InvariantCultureIgnoreCase)); // Specialized exists. if (await specializeds.AnyAsync()) return ResponseMessage( Request.CreateErrorResponse(HttpStatusCode.Conflict, HttpMessages.CannotBeDuplicated)); var specialized = new Database.Models.Entities.Specialized { Name = info.Name, Status = MasterItemStatus.Active }; specialized = UnitOfWork.RepositorySpecialized.Insert(specialized); await UnitOfWork.CommitAsync(); return Ok(specialized); }
/// <summary> /// Create new specialized /// </summary> /// <param name="model"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public virtual async Task <Specialized> AddSpecializedAsync(AddSpecializedViewModel model, CancellationToken cancellationToken = default(CancellationToken)) { // Search specialized var specializeds = _unitOfWork.RepositorySpecialized.Search(); specializeds = specializeds.Where(x => x.Name.Equals(model.Name, StringComparison.InvariantCultureIgnoreCase)); // Check Specialized exists or not. if (await specializeds.AnyAsync(cancellationToken)) { throw new ApiException(HttpMessages.CannotBeDuplicated, HttpStatusCode.Conflict); } var specialized = new Specialized { Name = model.Name, Status = MasterItemStatus.Active }; _unitOfWork.RepositorySpecialized.Insert(specialized); // Commit to db. await _unitOfWork.CommitAsync(); return(specialized); }
public virtual async Task <IHttpActionResult> CreateSpecialized([FromBody] AddSpecializedViewModel info) { #region Parameter validation if (info == null) { info = new AddSpecializedViewModel(); Validate(info); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } #endregion // Call business to add specialized var specialized = await _specializedBusiness.AddSpecializedAsync(info); return(Ok(specialized)); }