/// <summary> /// Gets Product Reviews list /// </summary> /// <param name="productReviewModel"></param> /// <returns></returns> public async Task <ProductReviewResponse> GetProductReviews(ProductReviewRequest productReviewModel, ViatorSetting setting = null) { var uri = $"service/product/reviews"; string fullURL = $"{GenerateBaseURL(uri, setting)}&{GenerateQueryString(productReviewModel)}"; var response = await _httpClient.GetStringAsync(fullURL); var result = ProductReviewResponse.FromJson(response); return(result); }
public async Task <IActionResult> AddProductReview(int userId, ProductReviewRequest request) { await _productReviewService.AddAsync(userId, request); return(Created( Url.Link("GetUserProductReview", new { userId, productName = request.ProductName }), null)); }
public async Task AddAsync(int userId, ProductReviewRequest request) { if (request == null) { throw new ArgumentNullException(nameof(request)); } if (userId <= 0) { throw new ArgumentOutOfRangeException(nameof(userId)); } var reviewItem = ToProductReviewItem(userId, request); await _productReviewRepository.AddAsync(reviewItem); }