コード例 #1
0
        /// <summary>
        /// Checks if the operation has been completed
        /// </summary>
        /// <returns>Returns true if the operation has been completed</returns>
        /// <exception cref="UnauthorizedAccessException">The login-token is undefined or expired</exception>
        public bool IsCompleted(out ushort currentProgress)
        {
            if (this.ListProcesses_IsCompleted)
            {
                currentProgress = 100;
                return(true);
            }

            this.SecurityToken.Validate();             // may throw 'UnauthorizedAccessException'.

            using (HttpClient client = new HttpClient())
            {
                client.SetCopyleaksClient(HttpContentTypes.Json, this.SecurityToken);

                HttpResponseMessage msg;
                msg = Retry.Http <HttpResponseMessage>(
                    () => client.GetAsync(string.Format("{0}/{1}/{2}/status", Resources.ServiceVersion, this.Product.ToName(), this.PID)).Result,
                    TimeSpan.FromSeconds(3),
                    3);

                if (!msg.IsSuccessStatusCode)
                {
                    throw new CommandFailedException(msg);
                }

                string json = msg.Content.ReadAsStringAsync().Result;

                CheckStatusResponse response = JsonConvert.DeserializeObject <CheckStatusResponse>(json);
                currentProgress = response.ProgressPercents;
                return(response.Status == "Finished");
            }
        }
コード例 #2
0
        public async Task <IActionResult> Handle(HttpRequest request, CheckStatusRequest data)
        {
            AuthByKeyResult authResult = this.GetAuthenticationKey(request);

            if (!authResult.Result)
            {
                return(new JsonErrorResult(authResult.ErrorResponse));
            }

            ErrorResponse validationError = this.ValidateRequest(data);

            if (validationError != null)
            {
                return(new JsonErrorResult(validationError));
            }

            try
            {
                using (SqlConnection conn = sqlServer.GetConnection())
                {
                    await conn.OpenAsync();

                    using (SqlCommand cmd = sqlServer.GetSpCommand("dbo.Employee_CheckEmployeeStatus", conn))
                    {
                        cmd.AddBinaryParam("@PermanentKey", 16, authResult.Key.ToArray());
                        cmd.AddIntParam("@PlaceId", data.PlaceId);

                        SqlParameter EmployeeIdParam         = cmd.AddIntParam("@EmployeeId").Output();
                        SqlParameter EmployeeFirstNameParam  = cmd.AddNVarCharParam("@EmployeeFirstName", 50).Output();
                        SqlParameter EmployeeLastNameParam   = cmd.AddNVarCharParam("@EmployeeLastName", 50).Output();
                        SqlParameter EmployeeIsDisabledParam = cmd.AddBitParam("@EmployeeIsDisabled").Output();
                        SqlParameter PlaceGroupIdParam       = cmd.AddIntParam("@PlaceGroupId").Output();
                        SqlParameter PlaceGroupNameParam     = cmd.AddNVarCharParam("@PlaceGroupName", 50).Output();
                        SqlParameter retValParam             = cmd.AddReturnValue();

                        await cmd.ExecuteNonQueryAsync();

                        int retVal = retValParam.GetInt32OrDefault();
                        if (retVal == -1)
                        {
                            return(this.GetAuthKeyNotFoundResponse());
                        }

                        CheckStatusResponse response = new CheckStatusResponse();
                        response.EmployeeId         = EmployeeIdParam.GetInt32OrDefault();
                        response.EmployeeFirstName  = EmployeeFirstNameParam.Value.ToString();
                        response.EmployeeLastName   = EmployeeLastNameParam.Value.ToString();
                        response.EmployeeIsDisabled = EmployeeIsDisabledParam.GetBooleanOrDefault();
                        response.PlaceGroupId       = PlaceGroupIdParam.GetInt32OrNull();
                        response.PlaceGroupName     = PlaceGroupNameParam.GetStringOrNull();

                        return(new JsonResult(response));
                    }
                }
            }
            catch (Exception ex)
            {
                return(new JsonErrorResult(this.GetExceptionResponse(ex)));
            }
        }
コード例 #3
0
        public void testSendMultipleSMS()
        {
            int initCredit = this.client.getCredit().SmsPageCount;
            List <OutgoingSMS> messages = new List <OutgoingSMS>();

            for (int i = 0; i < 10; i++)
            {
                messages.Add(new OutgoingSMS(PANEL_LINE, DESTINATION, "V2::testSendMultipleSMS" + string.Format("({0})", i), i.ToString(), DateTime.Now.AddMinutes(i)));
            }

            List <SendSMSResponse> response = client.sendSMS(messages);

            Assert.AreEqual(10, response.Count);
            List <int> ids = new List <int>();

            foreach (var id in response)
            {
                Assert.IsInstanceOf <SMSId>(id);
                ids.Add(int.Parse(((SMSId)id).Id));
            }
            CheckStatusResponse status = this.client.checkStatus(ids);

            Assert.AreEqual(10, status.StatusArray.Count);
            int finalCredit = this.client.getCredit().SmsPageCount;

            Assert.LessOrEqual(initCredit - finalCredit, 10);
        }
コード例 #4
0
        public Status checkStatus(int opiloId)
        {
            List <int> opiloIds = new List <int>();

            opiloIds.Add(opiloId);
            CheckStatusResponse response = this.checkStatus(opiloIds);

            return(response.StatusArray[0]);
        }
コード例 #5
0
        public IActionResult RequestStatus([FromBody] CheckStatusRequest checkStatusRequest)
        {
            using (var httpClient = new HttpClient())
            {
                var requestStatusUri = string.Format("http://provisioningportal:5000/api/requeststatus/{0}", checkStatusRequest.Inputs.RequestId);
                var response         = httpClient.GetAsync(requestStatusUri).Result;
                var responseContent  = response.Content.ReadAsStringAsync().Result;

                var checkStatusReponse = new CheckStatusResponse(responseContent);
                return(new ObjectResult(checkStatusReponse));
            }
        }
コード例 #6
0
        public CheckStatusResponse CheckStatus(CheckStatusRequest request)
        {
            var depositStatus = new CheckStatusResponse
            {
                IsPaid = false
            };
            var onlineDeposit = _repository.OnlineDeposits.FirstOrDefault(x => x.TransactionNumber == request.TransactionNumber);

            if (onlineDeposit != null)
            {
                var onlineDepositEntity = new OnlineDeposit(onlineDeposit);
                if (onlineDepositEntity.IsApproved())
                {
                    depositStatus.IsPaid      = true;
                    depositStatus.Amount      = onlineDeposit.Amount;
                    depositStatus.Bonus       = 0;//TODO:ONLINEDEPOSIT how to get Bonus
                    depositStatus.TotalAmount = depositStatus.Amount + depositStatus.Bonus;
                }
            }
            return(depositStatus);
        }
コード例 #7
0
        private async void Bookmark_Clicked(object sender, EventArgs e)
        {
            try
            {
                var client = new HttpClient()
                {
                    Timeout = TimeSpan.FromSeconds(30)
                };

                var     AuthService = DependencyService.Get <IAuthService>();
                var     token       = new JProperty("token", (this.BindingContext as ListInfo).usr_token);
                JObject jsonAuth    = new JObject
                {
                    { "login", AuthService.UserName },
                    { "password", AuthService.Password },
                    { "db", ServerAuth.DB }
                };

                JObject jsonDataObject = new JObject
                {
                    { "auth", jsonAuth },
                    token
                };

                JObject jsonData = new JObject
                {
                    { "params", jsonDataObject }
                };

                var data     = jsonData.ToString();
                var content  = new StringContent(data, Encoding.UTF8, "application/json");
                var response = await client.PostAsync(ApiUri.BASE_URL + ApiUri.TRAVELLER_CLICK, content);

                string responseContent = await response.Content.ReadAsStringAsync();

                if (response.StatusCode == HttpStatusCode.OK)
                {
                    CheckStatusResponse successResponse = JsonConvert.DeserializeObject <CheckStatusResponse>(responseContent, App.DefaultSerializerSettings);

                    if (successResponse != null && successResponse.Result != null)
                    {
                        if (successResponse.Result.Success)
                        {
                            Bookmark.TextColor       = Color.White;
                            Bookmark.BackgroundColor = Color.Yellow;
                            Bookmark.Source          = ImageSource.FromFile("icon_heartw");
                        }
                        else if (!string.IsNullOrWhiteSpace(successResponse.Result.Message))
                        {
                            UserDialogs.Instance.Toast(new ToastConfig(successResponse.Result.Message));
                        }
                    }
                    else
                    {
                        Internal.ServerError();
                    }
                }
                else
                {
                    Internal.ServerError();
                }
            }
            catch (TaskCanceledException)
            {
                UserDialogs.Instance.Toast(new ToastConfig("Bad Connection Error. Try Again"));
            }
            catch (Exception)
            {
                Internal.ServerError();
            }
            finally
            {
                UserDialogs.Instance.Loading().Hide();
            }
        }
コード例 #8
0
        private async void GetCheckStatus()
        {
            try
            {
                var client = new HttpClient()
                {
                    Timeout = TimeSpan.FromSeconds(30)
                };

                var AuthService = DependencyService.Get <IAuthService>();

                JObject jsonAuth = new JObject
                {
                    { "login", AuthService.UserName },
                    { "password", AuthService.Password },
                    { "db", ServerAuth.DB }
                };

                JObject jsonDataObject = new JObject
                {
                    { "auth", jsonAuth }
                };

                JObject jsonData = new JObject
                {
                    { "params", jsonDataObject }
                };

                var data     = jsonData.ToString();
                var content  = new StringContent(data, Encoding.UTF8, "application/json");
                var response = await client.PostAsync(ApiUri.BASE_URL + ApiUri.CHECK_STATUS, content);

                string responseContent = await response.Content.ReadAsStringAsync();

                if (response.StatusCode == HttpStatusCode.OK)
                {
                    CheckStatusResponse successResponse = JsonConvert.DeserializeObject <CheckStatusResponse>(responseContent, App.DefaultSerializerSettings);

                    if (successResponse != null && successResponse.Result != null)
                    {
                        if (successResponse.Result.Success)
                        {
                            lbTotalVisits.Text = successResponse.Result.Status.TotalVisits;
                            lbTotalPost.Text   = successResponse.Result.Status.TotalRatings;
                            //btnTotalPoint.Text = successResponse.Result.Status.TotalPoints;
                            lbTotalGiveAMinute.Text = successResponse.Result.Status.TotalGiveAMinute;
                            lbTotalKamoonity.Text   = successResponse.Result.Status.TotalKamoonity;
                            lbName.Text             = user.name;
                        }
                        else if (!string.IsNullOrWhiteSpace(successResponse.Result.Message))
                        {
                            UserDialogs.Instance.Toast(new ToastConfig(successResponse.Result.Message));
                        }
                    }
                    else
                    {
                        Internal.ServerError();
                    }
                }
                else
                {
                    Internal.ServerError();
                }
            }
            catch (TaskCanceledException)
            {
                UserDialogs.Instance.Toast(new ToastConfig("Bad Connection Error. Try Again"));
            }
            catch (Exception)
            {
                Internal.ServerError();
            }
            finally
            {
                UserDialogs.Instance.Loading().Hide();
            }
        }