public void MakeDiagnostic([FromBody] DiagnosticDto model)
        {
            APIService service = new APIService();

            var sdModel = new SeriesDescriptionBindingModel
            {
                SeriesName   = model.SeriesName,
                NeedForecast = model.NeedForecast
            };

            if (service.CheckSeries(sdModel))
            {
                service.FlushStat(sdModel);
            }
            else
            {
                var res = service.InitSeries(sdModel, model.DiagnosticList.Select(x => new APIData {
                    timestamp = x.DataSeriesDate, Value = x.DataSeriesValue
                }).ToList());
                if (!res)
                {
                    throw new Exception("Невозможно сформировать данные по ряду");
                }
            }

            var result = service.Diagnostic(sdModel, model.DiagnosticList.Select(x => new APIData {
                timestamp = x.DataSeriesDate, Value = x.DataSeriesValue
            }).ToList());
        }
Example #2
0
        public List <GranuleViewModel> Diagnostic(DiagnosticDto model, List <APIData> data)
        {
            APIService service = new APIService();

            return
                (service.Diagnostic(new SeriesDescriptionBindingModel
            {
                SeriesName = model.SeriesName,
                NeedForecast = false
            }, data));
        }
Example #3
0
        public List <GranuleViewModel> Diagnostic(DiagnosticDto model)
        {
            APIService service = new APIService();

            return
                (service.Diagnostic(new SeriesDescriptionBindingModel
            {
                SeriesName = model.SeriesName,
                NeedForecast = false
            }, GetData(new InitSeriesDto
            {
                SeriesName = model.SeriesName,
                Url = service.GetSeriesUrl(new SeriesDescriptionBindingModel
                {
                    SeriesName = model.SeriesName
                }),
                VersionId = model.VersionId
            }, model.Key)));
        }
Example #4
0
        private List <ResponseDiagnosticRecordDto> GetData(DiagnosticDto model)
        {
            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)
            {
                var stringResult           = response.Result.Content.ReadAsStringAsync();
                ResponseDiagnosticDto list = JsonConvert.DeserializeObject <ResponseDiagnosticDto>(stringResult.Result);
                if (list != null)
                {
                    return(list.Data);
                }
                else
                {
                    throw new Exception("Ряд не получен");
                }
            }
            else
            {
                throw new Exception(response.Result.Content.ReadAsStringAsync().Result);
            }
        }
 public void MakeDiagnostic(DiagnosticDto model)
 {
     dataSeries.Diagnostic(model);
 }