Exemplo n.º 1
0
        public IMeasuringElementViewModel CreateMeasuringElementViewModel(IMeasuringElement measuringElement, string groupName)
        {
            IMeasuringElementViewModel measuringElementViewModel =
                _container.Resolve <IMeasuringElementViewModel>(measuringElement.StrongName +
                                                                ApplicationGlobalNames.CommonInjectionStrings
                                                                .VIEW_MODEL);

            switch (measuringElement)
            {
            case AnalogMeasuringElement analogMeasuringElement:
                return(CreateAnalogMeasuringElementViewModel(analogMeasuringElement, groupName));

            case ControlSignal controlSignal:
                return(CreateControlSignalViewModelViewModel(controlSignal, groupName));

            case DescretMeasuringElement descretMeasuringElement:
                return(CreateDiscretMeasuringElementViewModel(descretMeasuringElement, groupName));

            case DateTimeMeasuringElement dateTimeMeasuringElement:
                return(this.CreateDateTimeMeasuringElementViewModel(dateTimeMeasuringElement, groupName));
            }

            measuringElementViewModel.GroupName = groupName;
            return(measuringElementViewModel);
        }
Exemplo n.º 2
0
 public void AddSubscription(MeasuringSubscriptionSet measuringSubscriptionSet,
                             IMeasuringElementViewModel measuringElementViewModel, IMeasuringElement measuringElement, string groupName,
                             DeviceContext deviceContext)
 {
     if (measuringElementViewModel is IDiscretMeasuringElementViewModel discretMeasuringElement)
     {
         measuringSubscriptionSet.DiscreteSubscriptions.Add(CreateDiscreteSubscription(discretMeasuringElement,
                                                                                       measuringElement, groupName, deviceContext));
     }
     else if (measuringElementViewModel is IAnalogMeasuringElementViewModel analogMeasuringElement)
     {
         measuringSubscriptionSet.AnalogSubscriptions.Add(CreateAnalogSubscription(analogMeasuringElement,
                                                                                   measuringElement, groupName, deviceContext));
     }
     else if (measuringElementViewModel is IDateTimeMeasuringElementViewModel dateTimeMeasuringElementViewModel)
     {
         measuringSubscriptionSet.DateTimeSubscriptions.Add(
             CreateDateTimeSubscription(dateTimeMeasuringElementViewModel, measuringElement, groupName, deviceContext));
     }
 }
        private IMeasuringElementViewModel InitializeTestValue(IMeasuringElementViewModel measuringElementViewModel)
        {
            if (measuringElementViewModel is IAnalogMeasuringElementViewModel analogMeasuringElement)
            {
                var value = StaticContainer.Container.Resolve <INumericValueViewModel>();
                value.NumValue = "1000";
                analogMeasuringElement.FormattedValueViewModel = value;
            }
            else if (measuringElementViewModel is IDiscretMeasuringElementViewModel discretMeasuringElement)
            {
                var value = StaticContainer.Container.Resolve <IBoolValueViewModel>();
                discretMeasuringElement.FormattedValueViewModel = value;
            }
            else if (measuringElementViewModel is IDateTimeMeasuringElementViewModel dateTimeMeasuringElement)
            {
                var now = DateTime.Now;
                dateTimeMeasuringElement.Date = $"{now.Day},{now.Month},{(now.Year-2000)}";
                dateTimeMeasuringElement.Time = $"{now.Hour}:{now.Minute}:{now.Second},{now.Millisecond.ToString().Substring(0,2)}";
            }

            return(measuringElementViewModel);
        }
 private void InitializePositionInto(PresentationElementViewModel presentationElementViewModel, IMeasuringElementViewModel measuringElementViewModel)
 {
     if (_positioningInfosDictionary.ContainsKey(measuringElementViewModel.Id))
     {
         presentationElementViewModel.PositioningInfoViewModel =
             _positioningInfosDictionary[measuringElementViewModel.Id];
     }
     else
     {
         _positioningInfosDictionary.Add(measuringElementViewModel.Id, presentationElementViewModel.PositioningInfoViewModel);
     }
 }