Example #1
0
        public void InitSeries(InitSeriesDto model, bool needForecast, List <APIData> data)
        {
            APIService service = new APIService();

            service.InitSeries(new SeriesDescriptionBindingModel
            {
                SeriesName        = model.SeriesName,
                SeriesDiscription = model.Url,
                NeedForecast      = needForecast
            }, data);
        }
Example #2
0
        public void InitSeries(InitSeriesDto model, bool needForecast, string key = null)
        {
            APIService service = new APIService();

            service.InitSeries(new SeriesDescriptionBindingModel
            {
                SeriesName        = model.SeriesName,
                SeriesDiscription = model.Url,
                NeedForecast      = needForecast
            }, GetData(model, key));
        }
 public void InitSeries(InitSeriesDto model)
 {
     dataSeries.InitSeries(model, false);
 }
Example #4
0
        /// <summary>
        /// Метод получения набора данных через запрос к webAPI
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        private List <APIData> GetData(InitSeriesDto model, string key = null)
        {
            string url = model.Url;

            var pattern = Regex.Match(url, @"versionId=[\d+]");

            if (pattern.Success)
            {
                url = url.Replace(pattern.Value, string.Format("versionId={0}", model.VersionId));
            }

            HttpClient client = new HttpClient
            {
                BaseAddress = new Uri("https://212.8.234.87/")
            };

            ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); };
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            Task <HttpResponseMessage> response = client.GetAsync(url);

            if (response.Result.IsSuccessStatusCode)
            {
                if (!string.IsNullOrEmpty(key))
                {
                    var stringResult           = response.Result.Content.ReadAsStringAsync();
                    ResponseDiagnosticDto list = JsonConvert.DeserializeObject <ResponseDiagnosticDto>(stringResult.Result);
                    if (list != null)
                    {
                        var resList = list.Data.FirstOrDefault(x => x.Key == key).Values.Select(x => new APIData
                        {
                            timestamp = DateTime.Now,
                            Value     = x
                        }).ToList();
                        return(resList);
                    }
                    else
                    {
                        throw new Exception("Ряд не получен");
                    }
                }
                else
                {
                    var stringResult         = response.Result.Content.ReadAsStringAsync();
                    ResponseForecastDto list = JsonConvert.DeserializeObject <ResponseForecastDto>(stringResult.Result);
                    if (list != null)
                    {
                        return(list.Data);
                    }
                    else
                    {
                        throw new Exception("Ряд не получен");
                    }
                }
            }
            else
            {
                throw new Exception(response.Result.Content.ReadAsStringAsync().Result);
            }
        }