Exemple #1
0
        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 =
                    }
                }
            }
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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);
            }
        }