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);
        }
Exemple #8
0
        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 += " Процесс";
                    }
                }
            }
        }
Exemple #9
0
        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 =>
                {
                });
            }
        }