public ActionResult Levels(int ClientId, string ModuleName, DateTime DateFrom, DateTime DateTo, TimeSpan TimeFrom, TimeSpan TimeTo) { _levelModule.Initialize(ClientId, ModuleName); var max = _levelModule.MaxLevel; var min = _levelModule.MinLevel; var z = _levelModule.GetLevelsFromInterval(DateFrom.Add(TimeFrom), DateTo.Add(TimeTo), 20) .OrderBy(t => t.Key) .Select(t => new { Date = t.Key.ToString("dd.MM.yyyy hh:mm"), Value = (min - t.Value - max) * 100 / (min - max) }); var res = Json(z, JsonRequestBehavior.AllowGet); return(res); }
protected void RefreshDiagram() { if (_module == null) { var automateProv = _container.Resolve <IAutomateDataProvider>(); var automate = automateProv.GetAutomate(_automateName); _module = (ILevelModule)automate.Modules.First(t => t.Name == _moduleName && t.Type == Services.DTO.ModuleType.Level); } var data = _module.GetLevelsFromInterval(_from, _to, 100); Chart1.ChartAreas["ChartArea1"].AxisX.Minimum = _from.ToOADate(); Chart1.ChartAreas["ChartArea1"].AxisX.Maximum = _to.ToOADate(); foreach (KeyValuePair <DateTime, double> dat in data) { Chart1.Series[0].Points.AddXY(dat.Key, dat.Value); } }