public async Task RateBeer(int id, UserRatingDetail userRating) { if (userRating == null) { throw new System.ArgumentException("Invalid User Rating"); } var response = await HttpClientHelper.GetAsync($"{API_PATH}?{PARAM_ID}={id}"); string responseBody = await response.Content.ReadAsStringAsync(); var beers = JsonConvert.DeserializeObject <List <Beer> >(responseBody); if (beers.Any()) { userRatingDb.Add(new UserRating { Id = id, Username = userRating.Username, Comments = userRating.Comments, Rating = userRating.Rating }); userRatingDb.SaveChanges(); } else { throw new System.ArgumentException("Beer Does not Exist"); } }
// Get Rating by Exchange ID private static async Task GetRatingByID() { Console.Clear(); Console.Write("Enter ID of exchange: "); string userInput = Console.ReadLine(); //HttpClient httpClient = new HttpClient(); //httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _token); //HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, $"https://localhost:44331/api/UserRating/{userInput}"); //request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _token); HttpResponseMessage response = await _httpClient.GetAsync($"https://localhost:44331/api/UserRating/{userInput}"); if (response.IsSuccessStatusCode) { UserRatingDetail userRating = await response.Content.ReadAsAsync <UserRatingDetail>(); if (userRating != null) { Console.WriteLine($"\n" + $"ID: {userRating.Id}\n" + $"User ID: {userRating.UserId}\n" + $"Exchange ID: {userRating.ExchangeId}\n" + $"Exchange Rating: {userRating.ExchangeRating}\n"); } else { Console.WriteLine("Exchange hasn't been rated"); } } }
public async Task <IActionResult> Rate(int id, [FromBody] UserRatingDetail userRating) { try { await ratingService.RateBeer(id, userRating); } catch (System.Exception e) { return(new BadRequestObjectResult(e.Message)); } return(Ok()); }
public UserRatingDetail GetRatingOfExchangeByExchangeId(int Id) { var RatingEntities = _context.UserRatings.ToList(); if (RatingEntities.Where(r => r.ExchangeId == Id).Count() != 1) { return(null); } var RatingEntity = RatingEntities.Single(r => r.ExchangeId == Id); var rating = new UserRatingDetail { Id = RatingEntity.Id, UserId = RatingEntity.UserId, ExchangeId = RatingEntity.ExchangeId, ExchangeRating = RatingEntity.ExchangeRating }; return(rating); }