public ActionResult Post([FromBody] TravelReviewViewModel travelReviewViewModel) { if (ModelState.IsValid) { if (this._authService.IsUserAuthorizedAsync(travelReviewViewModel.CaptchaToken)) { TravelReview travelReview = this._mapper.MapViewModel(travelReviewViewModel); String errorMessage = this._travelReviewService.GetValidationError(travelReview); if (String.IsNullOrEmpty(errorMessage)) { this._travelReviewService.CreateTravelReview(travelReview); return(Ok()); } else { return(StatusCode(StatusCodes.Status422UnprocessableEntity, errorMessage)); } } else { return(Unauthorized()); } } else { return(StatusCode(StatusCodes.Status422UnprocessableEntity, ModelState)); } }
private void FillTravelReviewWithIdIfItIsNecessary(TravelReview travelReview) { if (travelReview.ReviewId.Equals(0)) { travelReview.ReviewId = _firstReviewId; TravelReview existingReview = this._getRepository.GetFirstByConditionsAndSort(x => true, x => x.ReviewId, Constants.SortTypes.Desc); if (existingReview != null) { travelReview.ReviewId = existingReview.ReviewId + 1; } } }
private void FillTravelReviewIfItIsNecessary(TravelReview travelReview) { this.FillTravelReviewWithIdIfItIsNecessary(travelReview); this.FillTransportIfItIsNecessary(travelReview.ReviewTransport); this.FillFeelingIfItIsNecessary(travelReview.TravelFeeling); }
public string GetValidationError(TravelReview travelReview) { //TODO: implementar return(String.Empty); }
public void CreateTravelReview(TravelReview travelReview) { this.FillTravelReviewIfItIsNecessary(travelReview); this._saveRepository.Save(travelReview); }