Beispiel #1
0
 public void AddDivFre(DivFreTreeItemViewModel divfre)
 {
     if (divfre == null)
     {
         return;
     }
     if (!DivFreTreeItems.Contains(divfre))
     {
         DivFreTreeItems.Add(divfre);
     }
 }
Beispiel #2
0
 public void DeleteDivFre(DivFreTreeItemViewModel divfre)
 {
     if (divfre == null)
     {
         return;
     }
     if (DivFreTreeItems.Contains(divfre))
     {
         DivFreTreeItems.Remove(divfre);
     }
 }
Beispiel #3
0
        //添加分频时,根据测点和通道得到分频信息
        public DivFreInfo GetDivFreInfo(IChannel i_channel, DivFreTreeItemViewModel divfre, ItemTreeItemViewModel item)
        {
            DivFreInfo divfreinfo = null;

            if (i_channel is VibrationChannelInfo)
            {
                divfreinfo = new DivFreInfo();
                //CardCopyHelper.DivFreInfoLeftCopyToRight((i_channel as VibrationChannelInfo).DivFreInfo[0], divfreinfo);
            }
            if (divfreinfo != null)
            {
                var divfreinfo_copy = (i_channel as VibrationChannelInfo).DivFreInfo[0];
                divfreinfo.BasedOnRPM   = divfreinfo_copy.BasedOnRPM;
                divfreinfo.FixedFre     = divfreinfo_copy.FixedFre;
                divfreinfo.BasedOnRange = divfreinfo_copy.BasedOnRange;
                if (divfreinfo.AlarmStrategy == null)
                {
                    divfreinfo.AlarmStrategy = new AlarmStrategy();
                }
                if (divfreinfo.AlarmStrategy.Absolute == null)
                {
                    divfreinfo.AlarmStrategy.Absolute = new AbsoluteAlarm();
                }
                if (divfreinfo.AlarmStrategy.Comparative == null)
                {
                    divfreinfo.AlarmStrategy.Comparative = new ComparativeAlarm();
                }
                divfreinfo.AlarmStrategy.Absolute.Category       = divfreinfo_copy.AlarmStrategy.Absolute.Category;
                divfreinfo.AlarmStrategy.Absolute.Para           = divfreinfo_copy.AlarmStrategy.Absolute.Para;
                divfreinfo.AlarmStrategy.Absolute.Mode           = divfreinfo_copy.AlarmStrategy.Absolute.Mode;
                divfreinfo.AlarmStrategy.Absolute.ModeCode       = divfreinfo_copy.AlarmStrategy.Absolute.ModeCode;
                divfreinfo.AlarmStrategy.Comparative.Range       = divfreinfo_copy.AlarmStrategy.Comparative.Range;
                divfreinfo.AlarmStrategy.Comparative.IntevalTime = divfreinfo_copy.AlarmStrategy.Comparative.IntevalTime;
                divfreinfo.AlarmStrategy.Comparative.Percent     = divfreinfo_copy.AlarmStrategy.Comparative.Percent;
                divfreinfo.AlarmStrategy.Comparative.IsAllow     = divfreinfo_copy.AlarmStrategy.Comparative.IsAllow;
                divfreinfo.AlarmStrategy.Comparative.Para        = divfreinfo_copy.AlarmStrategy.Comparative.Para;

                divfreinfo.Guid        = divfre.T_Organization.Guid.ToString();
                divfreinfo.Code        = divfre.T_Organization.Code;
                divfreinfo.Name        = divfre.T_Organization.Name;
                divfreinfo.Create_Time = divfre.T_Organization.Create_Time.GetValueOrDefault().ToString("yyyy-MM-dd HH:mm:ss");
                divfreinfo.Modify_Time = divfre.T_Organization.Modify_Time.GetValueOrDefault().ToString("yyyy-MM-dd HH:mm:ss");
                divfreinfo.Remarks     = divfre.T_Organization.Remarks;
                divfreinfo.T_Item_Guid = item.T_Item.Guid.ToString();
                divfreinfo.T_Item_Name = item.T_Item.Name;
                divfreinfo.T_Item_Code = item.T_Item.Code;
                divfreinfo.DivFreCode  = 0;
                return(divfreinfo);
            }
            return(null);
        }
Beispiel #4
0
        private void GetSubOrganization(OrganizationTreeItemViewModel parent_organization, string ip, bool isadmin)
        {
            if (parent_organization == null)
            {
                return;
            }
            var childs = from p in _databaseComponent.GetOrganizationData(ip) where p.Parent_Guid == parent_organization.T_Organization.Guid && p.Is_Disabled == false orderby p.Sort_No select p;

            foreach (var child in childs)
            {
                if (child.NodeType == 0 && child.Is_Disabled == false)
                {
                    T1_OrganizationPrivilege t_organization = null;
                    if (isadmin == false)
                    {
                        t_organization = (from p in T_OrganizationPrivilege[ip] where p.T_Organization_Guid == child.Guid select p).FirstOrDefault();
                    }
                    if (t_organization != null || isadmin == true)
                    {
                        OrganizationTreeItemViewModel organization = new OrganizationTreeItemViewModel(child, parent_organization);
                        //organization.T_Organization = child;
                        parent_organization.AddChild(organization);
                        GetSubOrganization(organization, ip, isadmin);
                    }
                }
                else if (child.NodeType == 1 && child.Is_Disabled == false)
                {
                    T1_OrganizationPrivilege t_organization = null;
                    if (isadmin == false)
                    {
                        t_organization = (from p in T_OrganizationPrivilege[ip] where p.T_Organization_Guid == child.Guid select p).FirstOrDefault();
                    }
                    if (t_organization != null || isadmin == true)
                    {
                        DeviceTreeItemViewModel organization = new DeviceTreeItemViewModel(child, parent_organization);
                        parent_organization.AddChild(organization);

                        GetSubOrganization(organization, ip, isadmin);
                    }
                }
                else if (child.NodeType == 2 && child.Is_Disabled == false)
                {
                    ItemTreeItemViewModel organization = new ItemTreeItemViewModel(child, parent_organization as DeviceTreeItemViewModel);
                    parent_organization.AddChild(organization);
                    //测点数据
                    var t_item = _databaseComponent.GetItemData(ip).Where(p => p.Is_Disabled == false && p.Guid == organization.T_Organization.Guid).FirstOrDefault();
                    if (t_item != null)
                    {
                        organization.RecoverBind(t_item);
                        t_item.ServerIP = parent_organization.ServerIP;//改为初始化时候填充,覆盖数据库的ServerIP。
                        //如果彻底删除此项,必须修改//服务器IP匹配20180306
                    }
                    ItemTreeItems.Add(organization);

                    GetSubOrganization(organization, ip, isadmin);
                }
                else if (child.NodeType == 3 && child.Is_Disabled == false)
                {
                    DivFreTreeItemViewModel organization = new DivFreTreeItemViewModel(child, parent_organization as ItemTreeItemViewModel);

                    //分频数据
                    var t_divfre = T_DivFreInfo[ip].Where(p => p.Guid == organization.T_Organization.Guid).FirstOrDefault();
                    if (t_divfre != null)                           //分频一定不为空
                    {
                        parent_organization.AddChild(organization); //否则丢弃无效分频数据

                        organization.T_DivFreInfo = t_divfre;
                        DivFreTreeItems.Add(organization);

                        //GetSubOrganization(organization, ip, isadmin);//分频下无节点
                    }
                }
            }
        }