Example #1
0
        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");
            }
        }
Example #2
0
        // 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");
                }
            }
        }
Example #3
0
        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);
        }