Esempio n. 1
0
        /// <summary>
        /// 读取设备集合(Type数值:设备类型:1;设备:2)
        /// </summary>
        private void GetEquTypeAndEquTree()
        {
            string         equJsonStr     = JesonOperateHelper.ReadJesonFile("EquList.json");
            string         equTypeJsonStr = JesonOperateHelper.ReadJesonFile("EquTypeList.json");
            List <Equ>     equList        = JsonConvert.DeserializeObject(equJsonStr, typeof(List <Equ>)) as List <Equ>;
            List <EquType> equTypeList    = JsonConvert.DeserializeObject(equTypeJsonStr, typeof(List <EquType>)) as List <EquType>;
            var            rootTypes      = (from r in equTypeList where string.IsNullOrEmpty(r.ParentId) select r).ToList();

            if (rootTypes.Count > 0)
            {
                EquType         rootType = rootTypes.First();//获取根节点
                ComBoxTreeModel rootNode = new ComBoxTreeModel()
                {
                    Id = rootType.Id, Code = rootType.Code, Type = IoConfigParam.Type_EquType, Name = rootType.Name
                };
                #region 加载设备信息
                var             equs = equList.Where(p => p.EquTypeId == rootType.Id).ToList();
                ComBoxTreeModel etemp;
                foreach (var equ in equs)
                {
                    etemp = new ComBoxTreeModel()
                    {
                        Id     = equ.Id,
                        Code   = equ.Code,
                        Name   = equ.Name,
                        Type   = IoConfigParam.Type_Equ,
                        Parent = rootNode
                    };
                    rootNode.Child.Add(etemp);
                }
                #endregion
                InitTreeObjects(rootNode, rootType.Child, equList);
                var             list      = from r in rootNode.Child select new TreeNode().Parse(r, () => r.Name, () => r.Child);
                List <TreeNode> final     = new List <TreeNode>();
                TreeNode        rootNode1 = new TreeNode(rootNode.Name, list)
                {
                    Target = new ComBoxTreeModel()
                    {
                        Child = rootNode.Child, Id = rootNode.Id, Code = rootNode.Code, Name = rootNode.Name, Type = rootNode.Type, Parent = rootNode.Parent
                    }
                };
                final.Add(rootNode1);
                comboBoxItemSource = CovertToTree.CovertObjToTree(final, ref comboBoxTreeList);
            }
        }