public AddEditExistingMechanicalComponentPropertyViewModel(MechanicalEquipmentComponentType mect)
        {
            mComponentTypeId = mect.Id;
            OkButtonCommand = new DelegateCommand<object>(OkButtonHander, CanAdd);
            CancelButtonCommand = new DelegateCommand<object>(CancelButtonHander, x => true);

            CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint);
            Properties = new List<MechanicalEquipmentProperty>();

            //Load Component types
            EventHandler<GetAllMechanicalEquipmentPropertiesCompletedEventArgs> fetchCompleted = null;
            fetchCompleted = (s, eventArgs) =>
            {
                cmsWebServiceClient.GetMechanicalEquipmentPropertiesCompleted +=
                    (s1, e1)
                    =>
                    {
                        List<int> listOfAssignedPropertyIds = new List<int>();
                        e1.Result.ForEach(x => listOfAssignedPropertyIds.Add(x.Id));

                        //Remove already assigned properties
                        foreach (var componentProperty in eventArgs.Result)
                        {
                            if (!listOfAssignedPropertyIds.Contains(componentProperty.Id))
                            {
                                Properties.Add(componentProperty);
                            }
                        }

                        if (Properties.Count > 0)
                        {
                            SelectedProperty = Properties[0];
                        }
                        Loaded();
                    };

                cmsWebServiceClient.GetMechanicalEquipmentPropertiesAsync(mect.Id);

            };
            cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesCompleted += fetchCompleted;
            cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesAsync();
        }
        public AddEditExistingMechanicalComponentPropertyViewModel(int componentTypePropertyId)
        {
            OkButtonCommand = new DelegateCommand<object>(OkButtonHander, CanAdd);
            CancelButtonCommand = new DelegateCommand<object>(CancelButtonHander, x => true);

            CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint);
            Properties = new List<MechanicalEquipmentProperty>();

            //Load Mechanical Properties types
            EventHandler<GetAllMechanicalEquipmentPropertiesCompletedEventArgs>
                fetchCompleted = (s, e) =>
                {
                    Properties = e.Result;
                    cmsWebServiceClient.GetMechanicalComponentTypePropertyCompleted +=
                        (s2, e2) =>
                        {
                            if (Properties.Count > 0)
                            {
                                SelectedProperty = (from x in Properties
                                                    where x.Id == e2.Result.MechanicalEquipmentPropertyId
                                                    select x).FirstOrDefault();
                            }
                            mComponentTypeId = e2.Result.MechanicalEquipmentComponentTypeId;
                            Loaded();
                        };
                    cmsWebServiceClient.GetMechanicalComponentTypePropertyAsync(componentTypePropertyId);
                };

            cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesCompleted += fetchCompleted;
            cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesAsync();
        }
コード例 #3
0
        public void LoadExistingProperties()
        {
            CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint);

            switch (mEquipmentPropertyType)
            {
                case CommonUtils.EquipmentPropertyType.ControlEngineeringProperty:
                    cmsWebServiceClient.GetAllControlSystemPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllControlSystemPropertiesAsync();
                    break;
                case CommonUtils.EquipmentPropertyType.ControlTuningProperty:
                    cmsWebServiceClient.GetAllControlSystemTuningPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllControlSystemTuningPropertiesAsync();
                    break;

                case CommonUtils.EquipmentPropertyType.ControlInterlockProperty:
                    cmsWebServiceClient.GetAllInterlockPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllInterlockPropertiesAsync();
                    break;
                case CommonUtils.EquipmentPropertyType.ElectricalProperty:
                    cmsWebServiceClient.GetAllElectricalEquipmentPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllElectricalEquipmentPropertiesAsync();
                    break;
                case CommonUtils.EquipmentPropertyType.InstrumentProperty:
                    cmsWebServiceClient.GetAllInstrumentPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllInstrumentPropertiesAsync();
                    break;
                case CommonUtils.EquipmentPropertyType.MechanicalProperty:
                    cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesAsync();
                    break;
                case CommonUtils.EquipmentPropertyType.MobilePlantProperty:
                    cmsWebServiceClient.GetAllMobilePlantPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllMobilePlantPropertiesAsync();
                    break;
                case CommonUtils.EquipmentPropertyType.PipeProperty:
                    cmsWebServiceClient.GetAllPipePropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllPipePropertiesAsync();
                    break;

                case CommonUtils.EquipmentPropertyType.SystemTestingProperty:
                    cmsWebServiceClient.GetAllControlSystemTestingPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllControlSystemTestingPropertiesAsync();
                    break;

                case CommonUtils.EquipmentPropertyType.ComponentTestingProperty:
                    cmsWebServiceClient.GetAllControlSystemComponentTestingPropertiesCompleted += (s, e) =>
                    {
                        if (ExistingProperties == null) ExistingProperties = new List<IComponentProperty>();
                        ExistingProperties.Clear();

                        e.Result.ForEach(ExistingProperties.Add);
                        mPropertiesLoaded = true;
                        OnDataLoaded();

                    };
                    cmsWebServiceClient.GetAllControlSystemComponentTestingPropertiesAsync();
                    break;
            }
        }
コード例 #4
0
 private void LoadProperties(NodeView expandedNode)
 {
     CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint);
     EventHandler<GetAllMechanicalEquipmentPropertiesCompletedEventArgs> fetchCompleted = null;
     fetchCompleted = (s, eventArgs) =>
                          {
                              List<MechanicalEquipmentProperty> properties = eventArgs.Result;
                              if (properties != null)
                              {
                                  foreach (MechanicalEquipmentProperty property in properties)
                                  {
                                      NodeView child = new NodeView(expandedNode)
                                                           {
                                                               Id = property.Id,
                                                               Name = property.Name,
                                                               Description = property.Description,
                                                               Icon = "/CmsEquipmentDatabase;component/Images/Configuration.png",
                                                               Type = NodeType.MechanicalStandardComponentProperty,
                                                               HasChildren = false,
                                                               SortField = property.Name
                                                           };
                                      expandedNode.Children.Add(child);
                                      cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesCompleted -= fetchCompleted;
                                  }
                                  expandedNode.Sort();
                              }
                          };
     cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesCompleted += fetchCompleted;
     cmsWebServiceClient.GetAllMechanicalEquipmentPropertiesAsync();
 }