private async void TapGestureRecognizer_TappedAsync(object sender, EventArgs e) { var img = ((CachedImage)sender); var mainViewModel = MainViewModel.GetInstance(); var apiService = new ApiService(); var apiSecurity = Application.Current.Resources["APISecurity"].ToString(); if (img.BindingContext is PromotionResult promotion) { var checkConnetion = await apiService.CheckConnection(); if (!checkConnetion.IsSuccess) { this.IsEnabled = true; await DisplayAlert( Languages.Error, checkConnetion.Message, Languages.Accept); return; } var request = new PromotionResultRequest { Customer = mainViewModel.User.UserId, ClientId = promotion.ArtistId, PromotionTypeId = promotion.PromotionTypeId ?? 0 }; var voteResponse = await Library.Vote(request); if (voteResponse != null) { if (voteResponse.ResponseMessage != "Success") { await DisplayAlert( Languages.Error, voteResponse.ResponseMessage, Languages.Accept); return; } else { mainViewModel.LibraryPromoModel.GetPromotionResult(promotion.PromotionTypeId ?? 0, promotionCategoryId); var user = await apiService.GetUserByEmail( apiSecurity, "/api/account", "/customer/getcustomer", mainViewModel.Token.TokenType, mainViewModel.Token.AccessToken, mainViewModel.Token.UserName); mainViewModel.Login.registerDataService(user, mainViewModel.Token); //mainViewModel.LibraryPromoModel.PromotionResult = } } } }
public async Task <ApiResponse> VotePromotion([FromBody] PromotionResultRequest request) { var apiResp = new ApiResponse { ResponseType = -1, ResponseMessage = "Failed" }; var retVal = await _promotion.Vote(request.PromotionTypeId, request.PromotionMapId, request.ClientId, request.Customer); if (retVal.Success.HasValue) { apiResp.ResponseType = Convert.ToInt16(retVal.Success); apiResp.ResponseMessage = retVal.Message; } return(apiResp); }
public static async Task <ApiResponse> Vote(PromotionResultRequest promotionResultRequest) { try { var apiSecurity = Application.Current.Resources["APISecurity"].ToString(); var request = JsonConvert.SerializeObject(promotionResultRequest); var content = new StringContent( request, Encoding.UTF8, "application/json"); var client = new HttpClient(); // client.DefaultRequestHeaders.Authorization = // new AuthenticationHeaderValue(tokenType, accessToken); client.BaseAddress = new Uri(apiSecurity); var url = string.Format("{0}{1}", "/api/promotion", "/vote"); var response = await client.PostAsync(url, content); if (!response.IsSuccessStatusCode) { return(null); } var result = await response.Content.ReadAsStringAsync(); return(JsonConvert.DeserializeObject <ApiResponse>(result)); } catch (Java.Net.SocketException e) { // Console.WriteLine("\nException Caught!"); // Console.WriteLine("Message :{0} ", e.Message); return(null); } catch (System.Net.Http.HttpRequestException) { return(null); } }