Exemplo n.º 1
0
 public bool IsExist(IPsnLog psnLog)
 {
     if (!IsOpened)
     {
         throw new Exception("Сперва необходимо открыть репозиторий!");
     }
     // TODO: We assumed calling from UI thread
     return(_locomotives.Any(locomotive => locomotive.Sections.Any(section => section.Psns.Any(log => log.Id.ToString() == psnLog.Id.ToString()))));
 }
Exemplo n.º 2
0
        private void FillPsnMeters(IPsnLog psnLog, TrendChartType trendChartType)
        {
            foreach (var psnMeter in psnLog.Meters)
            {
                PsnMeters.Add(new PsnMeterViewModel(psnMeter, trendChartType));
            }

            _psnMetersConnector = new ObservableCollectionsConnector <IPsnMeter, IPsnMeterViewModel>(psnLog.Meters, PsnMeters,
                                                                                                     OnConstructDestItem,
                                                                                                     OnGetDestItem);
        }
Exemplo n.º 3
0
        public PsnLogViewModel(IPsnLog psnLog, TrendChartType trendChartType)
        {
            _trendChartType = trendChartType;
            PsnLog          = psnLog;

            UpdateHasIntergiryErrors();

            PsnLog.IsSomethingWrongWithLogChanged += (sender, args) => UpdateHasIntergiryErrors();
            FillPsnMeters(psnLog, trendChartType);

            _isInEditLabelMode = false;
        }
Exemplo n.º 4
0
        PsnLogViewModel ConstructNewPsnLog(IPsnLog psnLog)
        {
            if (psnLog.LogType == PsnLogType.FixedLength)
            {
                return new PsnLogViewModel(psnLog, TrendChartType.Psn)
                       {
                           IsNew = CaptureNewFaults
                       }
            }
            ;

            return(null);
        }

        PsnLogViewModel ConstructNewPsnPowerOnLog(IPsnLog psnLog)
        {
            if (psnLog.LogType == PsnLogType.PowerDepended)
            {
                return new PsnLogViewModel(psnLog, TrendChartType.Psn)
                       {
                           IsNew = CaptureNewFaults
                       }
            }
            ;

            return(null);
        }

        /// <summary>
        /// Вызывается при добавленнии новой аварии в список аварий в модели данных (ISection.Faults).
        /// </summary>
        /// <param name="fault">Авария.</param>
        /// <returns>Модель представления аварии.</returns>
        FaultViewModel ConstructNewFault(IFaultLog fault)
        {
            return(new FaultViewModel(fault)
            {
                IsNew = CaptureNewFaults
            });
        }

        #endregion         // Private Methods



        #region Private Properties Fields

        private ObservableCollection <IFaultViewModel> _faults          = new ObservableCollection <IFaultViewModel>();
Exemplo n.º 5
0
        public PsnLogViewModel(IPsnLog model)
        {
            _model = model;

            _isInEditMode = false;
            _newName      = _model.Name;
            _psnDevices   = new ObservableCollection <PsnDeviceViewModel>();
            foreach (var meter in _model.Meters)
            {
                _psnDevices.Add(new PsnDeviceViewModel(meter));
            }

            _cmdStartModifyName = new DependedCommand(() => {
                IsInEditMode = true;
            }, () => !IsInEditMode);
            _cmdStartModifyName.AddDependOnProp(this, "IsInEditMode");


            _cmdSetName = new DependedCommand(() => {
                IsInEditMode = false;
                Name         = _newName;
            }, () => IsInEditMode);
            _cmdSetName.AddDependOnProp(this, "IsInEditMode");

            CmdGetPagesStatistic = new RelayCommand(() => {
                _model.GetStatisticAsync((ex, text) => {
                    if (ex != null)
                    {
                        MessageSystem.ShowMessage(ex.ToString());
                    }
                    else
                    {
                        MessageSystem.ShowMessage(text.Aggregate(string.Empty, (current, line) => current + (line + Environment.NewLine)));
                    }
                });
            });

            model.IsSomethingWrongWithLogChanged += (sender, args) => RaisePropertyChanged(() => LogHealth);
        }
Exemplo n.º 6
0
        private IPsnLogViewModel GetPsnPowerOnLogDestItem(IPsnLog psnLog)
        {
            var t = PsnPowerOnLogs.FirstOrDefault(e => e.PsnLog == psnLog);

            return(t);
        }
Exemplo n.º 7
0
 public bool IsExist(IPsnLog psnLog)
 {
     return(false);
 }