public override void OnDialogOpened(IDialogParameters parameters) { if (parameters != null) { GraphInfo = parameters.GetValue <RoomLineGraphInfo>("model"); if (parameters.TryGetValue("id", out int reportId)) { TemperatureGraphInfo = RoomLineGraphInfo.CreateDefault(); HumidityGraphInfo = RoomLineGraphInfo.CreateDefault(); Task.Run(async() => { var collection = await _roomRepository.FilterRooms(reportId, GraphInfo.ActiveDevice.Id); if (collection.Count() > 0) { TemperatureGraphInfo = FillTemperatureModel(collection); HumidityGraphInfo = FillHumidityModel(collection); } }); } Title = $"{GraphInfo?.ActiveDevice?.Nick} {GraphInfo?.ActiveDevice?.IPAddress}"; InitializeAnnotations(); SetSettings(); } }
private void OpenThirdGraph(MultiRoomLineGraphInfo roomInfo) { var r = new RoomLineGraphInfo(roomInfo.ActiveDevice, false) { GraphLineModel = roomInfo.GraphLineModelForProcess }; OpenGraph(r, 4); r?.Dispose(); }
private void OpenSecondGraph(MultiRoomLineGraphInfo roomInfo) { var r = new RoomLineGraphInfo(roomInfo.ActiveDevice, false) { GraphLineModel = roomInfo.GraphLineModelForMiddle }; OpenGraph(r, 2); r?.Dispose(); }
private void OpenFirstGraph(MultiRoomLineGraphInfo roomInfo) { var r = new RoomLineGraphInfo(roomInfo.ActiveDevice, false) { GraphLineModel = roomInfo.GraphLineModelForDefault }; OpenGraph(r, 1); r?.Dispose(); }
private void OpenGraph(ReportDTO reportDTO) { var room = new RoomLineGraphInfo(reportDTO.ActiveDevice, false); var dialogParametr = new DialogParameters { { "model", room }, { "id", reportDTO.Report.Id } }; _dialogService.Show("ArchiveGraphView", dialogParametr, x => { }); }
/// <summary> /// /// </summary> /// <param name="roomLineGraphInfo"></param> /// <param name="dataType">1-обычная,2-мид,3-норд,4-процесс</param> private void OpenGraph(RoomLineGraphInfo roomLineGraphInfo, int dataType) { var dialogParametr = new DialogParameters { { "model", roomLineGraphInfo }, { "dataType", dataType } }; _dialogService.Show("RealTimeGraphView", dialogParametr, x => { }); }
public RoomLineGraphInfo FillTemperatureModel(IEnumerable <RoomInfo> collection) { var result = RoomLineGraphInfo.CreateDefault(); var lineAxis = result.GraphLineModel.Axes.FirstOrDefault() as LinearAxis; lineAxis.AbsoluteMinimum = 27; lineAxis.AbsoluteMaximum = 60; var temperatureLineSerie = result.GraphLineModel.GetFirst(); var temperaturePoints = collection.Select(x => new DataPoint(DateTimeAxis.ToDouble(x.Date), x.Temperature)).ToList(); var min = collection.Min(x => x.Date); result.GraphLineModel.FillCollection(temperatureLineSerie, temperaturePoints); result.GraphLineModel.SetLastNHours(6); result.GraphLineModel.AddAnnotationEveryDay(); return(result); }
public override void OnDialogOpened(IDialogParameters parameters) { if (parameters != null) { GraphInfo = parameters.GetValue <RoomLineGraphInfo>("model"); TemperatureGraphInfo = RoomLineGraphInfo.CreateDefault(); TemperatureGraphInfo.GraphLineModel = ViewResolvingPlotModel.CreateDefault(18, 60); HumidityGraphInfo = RoomLineGraphInfo.CreateDefault(); HumidityGraphInfo.GraphLineModel = ViewResolvingPlotModel.CreateDefault(45, 75); TemperatureGraphInfo.GraphLineModel.GetLast().IsVisible = false; HumidityGraphInfo.GraphLineModel.GetFirst().IsVisible = false; GraphInfo.AddToCollectionEvent += Current_AddToCollectionEvent; Title = $"{GraphInfo?.ActiveDevice?.Nick} {GraphInfo?.ActiveDevice?.IPAddress}"; var points = _roomRepository.FilterRooms(GraphInfo.ActiveDevice.Id).GetAwaiter().GetResult(); FillTemperatureGraph(points); FillHumidityGraph(points); InitializeAnnotations(); SetSettings(); if (parameters.TryGetValue("dataType", out int value)) { if (value == 2) { TemperatureText += " Мид"; } if (value == 3) { TemperatureText += " Норд"; } if (value == 4) { TemperatureText += " Процесс"; } } } }
private void OpenGraph(ActiveDevice activeDevice) { var dialogParametr = new DialogParameters(); dialogParametr.Add("date", DateTimeSpan); if (activeDevice.DeviceType == Domain.Enumerations.DeviceType.Default) { var room = new RoomLineGraphInfo(activeDevice); dialogParametr.Add("model", room); _dialogService.Show("GraphView", dialogParametr, x => { }); } if (activeDevice.DeviceType == Domain.Enumerations.DeviceType.Multi) { var room = new MultiRoomLineGraphInfo(activeDevice); dialogParametr.Add("model", room); _dialogService.Show("MultiGraphView", dialogParametr, x => { }); } }