コード例 #1
0
 public AddEditComponentTypeGroupDialog(List<string> existingGroupNames)
 {
     InitializeComponent();
     mComponentTypeGroup = new ComponentTypeGroup();
     mViewModel = new AddEditComponentTypeGroupViewModel(mComponentTypeGroup,existingGroupNames, 1) { View = this };
     DataContext = mViewModel;
     Utils.ResetOriginalValues(this);
 }
コード例 #2
0
        public AddEditComponentTypeGroupViewModel(ComponentTypeGroup componentTypeGroup, List<string> existingGroupNames, int ordinal)
        {
            mComponentTypeGroup = componentTypeGroup;
            mOrdinal = ordinal;
            mExistingGroupNames = existingGroupNames;

            OkButtonCommand = new DelegateCommand<object>(OkButtonHander, CanModifyConfig);
            CancelButtonCommand = new DelegateCommand<object>(CancelButtonHander, x => true);
        }
コード例 #3
0
 public AddEditComponentTypeGroupDialog(ComponentTypeGroup componentTypeGroup, List<string> existingGroupNames, int ordinal)
 {
     InitializeComponent();
     Title = "Edit Group";
     mComponentTypeGroup = componentTypeGroup;
     mViewModel = new AddEditComponentTypeGroupViewModel(mComponentTypeGroup,existingGroupNames, ordinal) { View = this };
     DataContext = mViewModel;
     Utils.ResetOriginalValues(this);
 }
        private void LoadEditingData(int componentTypeId)
        {
            var getComponentTypeTestingPropertyTask = DatabaseLoader.GetControlSystemComponentTypeTestingProperty(componentTypeId);
            var getAvailableControlSystemTestingPropertiesTask = DatabaseLoader.GetAvailableControlSystemComponentTestingProperties(componentTypeId);

            var tasks = new List<Task>
            {
                getComponentTypeTestingPropertyTask,
                getAvailableControlSystemTestingPropertiesTask,
            };

            Task.Factory.ContinueWhenAll(tasks.ToArray(), xx =>
            {
                DatabaseLoader.GetControlSystemComponentTypeGroups(CommonUtils.EquipmentPropertyType.ComponentTestingProperty,
                    getComponentTypeTestingPropertyTask.Result.ComponentTypeId)
                    .ContinueWith(getControlSystemComponentTypeGroupsTask =>
                    {
                        CMS.UiFactory.StartNew(() =>
                        {
                            Properties = getAvailableControlSystemTestingPropertiesTask.Result;
                            Groups = getControlSystemComponentTypeGroupsTask.Result;
                            Groups.Insert(0, new ComponentTypeGroup
                            {
                                Name = "Null"
                            });

                            var csctftp = getComponentTypeTestingPropertyTask.Result;
                            mGroupId = csctftp.ComponentTypeGroupId;

                            if (Properties.Count > 0)
                            {
                                SelectedProperty = (from x in Properties
                                                    where x.Id == csctftp.TestPropertyId
                                                    select x).FirstOrDefault();
                            }

                            if (Groups.Count > 0 && csctftp.ComponentTypeGroupId.HasValue)
                            {
                                Group = (from x in Groups where x.Id == csctftp.ComponentTypeGroupId select x).FirstOrDefault();
                            }
                            else
                            {
                                Group = Groups[0];
                            }
                            OriginalSelectedGroup = Group;
                            mComponentTypeId = csctftp.ComponentTypeId;
                            if (Group.Id > 0)
                            {
                                mOrdinal = csctftp.GroupOrdinal;
                            }
                            else
                            {
                                mOrdinal = csctftp.Ordinal;
                            }
                            Loaded();

                        });
                    });
            });
        }
        private void LoadAddingData(int componentTypeId)
        {
            Properties = new List<ControlSystemComponentTestingProperty>();

            var getcomponentTypeTestingPropertiesTask = DatabaseLoader.GetControlSystemComponentTypeTestingProperties(componentTypeId);
            var getAllComponentTestingPropertiesTask = DatabaseLoader.GetAllControlSystemComponentTestingProperties();
            var getcomponentTypeGroupsTask = DatabaseLoader.GetControlSystemComponentTypeGroups(
                CommonUtils.EquipmentPropertyType.ComponentTestingProperty, componentTypeId);

            var tasks = new List<Task>
            {
                getcomponentTypeTestingPropertiesTask,
                getAllComponentTestingPropertiesTask,
                getcomponentTypeGroupsTask
            };

            Task.Factory.ContinueWhenAll(tasks.ToArray(), xx =>
            {
                CMS.UiFactory.StartNew(() =>
                {
                    Groups = getcomponentTypeGroupsTask.Result;
                    Groups.Insert(0, new ComponentTypeGroup { Name = "Null" });

                    List<int> listOfAssignedPropertyIds = new List<int>();
                    getcomponentTypeTestingPropertiesTask.Result.Where(x => x.TestPropertyId.HasValue).ToList()
                        .ForEach(x => listOfAssignedPropertyIds.Add(x.TestPropertyId.Value));

                    foreach (ControlSystemComponentTestingProperty property in getAllComponentTestingPropertiesTask.Result)
                    {
                        if (!listOfAssignedPropertyIds.Contains(property.Id))
                        {
                            Properties.Add(property);
                        }
                    }

                    if (Properties.Count > 0) SelectedProperty = Properties[0];
                    if (Groups.Count > 0)
                    {
                        if (mGroupId.HasValue)
                        {
                            Group = Groups.FirstOrDefault(x => x.Id == mGroupId.Value);

                            GroupComboEnabled = false;
                        }
                        else
                        {
                            Group = Groups[0];
                        }
                        OriginalSelectedGroup = Group;
                    }

                    Loaded();

                });
            });
        }
コード例 #6
0
ファイル: TestMigrater.cs プロジェクト: barrett2474/CMS2
        private static void SetOrdinalAndGroupOnControlTypeTestingProperty(ARTEntities art, CmsEntities cee, TestResult testResult, ControlModule cm, ControlSystem controlSystem)
        {
            //get the number for this testresult to use on the ControlSystemTypeTestingProperty.Number
            var tp = (from x in cee.ControlSystemTestingProperties where x.Description.Equals(testResult.Test.Description, StringComparison.CurrentCultureIgnoreCase) select x).FirstOrDefault();
            if (tp == null)
            {
                //log error
                Logger.Out(string.Format("Control {0} - Trying to set ordinal. No matchng ControlSystemTestingProperty found in CMS using Description = '{1}'.", cm.Tag, testResult.Test.Description));
                return;
            }

            var controlSystemTypeTestingProperty = (from x in cee.ControlSystemTypeTestingProperties
                                                    where x.ControlSystemTypeId == controlSystem.ControlSystemTypeId
                                                          && x.TestPropertyId == tp.Id
                                                    select x).FirstOrDefault();

            if (controlSystemTypeTestingProperty == null)
            {
                Logger.Out(string.Format("Control {0} - Trying to set ordinal. No matchng ControlSystemTypeTestingProperty found in CMS using ControlSystemTypeId = '{1}' and TestPropertyId = {2}.", cm.Tag, controlSystem.ControlSystemTypeId, tp.Id));
                return;
            }

            //matchGroup
            if (testResult.Test == null)
            {
                Logger.Out(string.Format("Control {0} - Trying to set Group Id. No Tests exist on TestResult.Test. ", cm.Tag));
                return;
            }

            if (controlSystemTypeTestingProperty.Ordinal == 0)
            {
                //not been set before.
                controlSystemTypeTestingProperty.GroupOrdinal = testResult.Number;
            }

            Stage stage = (from x in art.Stages where x.Id == testResult.Test.StageId select x).FirstOrDefault();

            if (stage != null)
            {
                if (controlSystemTypeTestingProperty.Ordinal == 0)
                {
                    //not been set before.
                    if (stage.Description.Equals("Stage 2", StringComparison.CurrentCultureIgnoreCase))
                    {
                        controlSystemTypeTestingProperty.Ordinal = 1;
                    }
                    else if (stage.Description.Equals("Stage 3", StringComparison.CurrentCultureIgnoreCase))
                    {
                        controlSystemTypeTestingProperty.Ordinal = 2;
                    }
                    else if (stage.Description.Equals("Stage 4", StringComparison.CurrentCultureIgnoreCase))
                    {
                        controlSystemTypeTestingProperty.Ordinal = 3;
                    }
                }

                //check if we have cee.Group.
                ComponentTypeGroup typeGroup = (from x in cee.ComponentTypeGroups
                                                where x.Name.Equals(stage.Description, StringComparison.InvariantCultureIgnoreCase)
                                                    && x.ComponentPropertyType.Equals(CommonUtils.EquipmentPropertyType.SystemTestingProperty.ToString(), StringComparison.InvariantCultureIgnoreCase)
                                                select x).FirstOrDefault();

                if (typeGroup == null)
                {
                    //CREATE GROUP
                    typeGroup = new ComponentTypeGroup
                    {
                        Name = stage.Description,
                        ComponentPropertyType = CommonUtils.EquipmentPropertyType.SystemTestingProperty.ToString()
                    };

                    cee.ComponentTypeGroups.Add(typeGroup);
                    cee.SaveChanges();
                    Logger.Out(string.Format("Control {0} - Created new CMS ComponentTypeGroup '{1}'. ", cm.Tag, typeGroup.Name));

                }

                controlSystemTypeTestingProperty.ComponentTypeGroupId = typeGroup.Id;
            }
        }