async Task Rating()
        {
            if (Rate < 1 || Rate > 5)
            {
                await Application.Current.MainPage.DisplayAlert("Error", "Rate value must be 1-5!", "OK");

                return;
            }

            RatingInsertRequest rating = new RatingInsertRequest
            {
                UserId        = BaseAPIService.Id,
                HairdresserId = HairdresserId,
                Rate          = Rate
            };

            Model.Rating newRating = await _apiService.Insert <Model.Rating>(rating);

            if (newRating != null)
            {
                await Application.Current.MainPage.DisplayAlert("Success", "You rate your hairdresser!", "OK");

                Application.Current.MainPage = new MainPage();
            }
            else
            {
                await Application.Current.MainPage.DisplayAlert("Warning", "Failed rating!", "OK");

                return;
            }
        }
コード例 #2
0
        public static async Task <Rating> SetRating(int listingId, int ratingValue)
        {
            var rating = new Model.Rating
            {
                ListingId   = listingId,
                UserId      = Preferences.Get("userId", 0),
                RatingValue = ratingValue
            };

            await TokenValidator.CheckTokenValidity();

            var httpClient = new HttpClient();
            var json       = JsonConvert.SerializeObject(rating);
            var content    = new StringContent(json, Encoding.UTF8, "application/json");

            httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", Preferences.Get("access_token", string.Empty));
            var response = await httpClient.PostAsync($"{_apiUrl}/Rating", content).Result.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <Rating>(response));
        }