Example #1
0
        /// <summary>
        /// 方法说明:根据根节点加载子节点
        /// 作    者:jason.tang
        /// 完成时间:2013-03-07
        /// </summary>
        /// <param name="parentNode"></param>
        private void LoadMaterialChildNode(TreeNode parentNode)
        {
            if (parentNode == null)
            {
                return;
            }

            parentNode.Nodes.Clear();

            //查找根节点(物料)下的子节点
            List <Model.MaterialModule> materialModuleList =
                MaterialModuleBLL.GetMaterialModuleList();

            if (materialModuleList.Count <= 0)
            {
                return;
            }

            materialModuleList.ForEach((o) =>
            {
                TreeNode node = new TreeNode();
                node.Text     = o.TypeName;
                node.Tag      = o.TypeId;
                node.Name     = null;
                switch (o.TypeId)
                {
                case "1":
                    node.ImageKey = "materialG";
                    break;

                case "2":
                    node.ImageKey = "materialS";
                    break;

                case "3":
                    node.ImageKey = "materialC";
                    break;

                case "4":
                    node.ImageKey = "materialC";
                    break;

                default:
                    break;
                }

                //根据物料类型查找物料分类
                List <Model.BusinessCategoryModule> businessCategoryModuleList
                    = MaterialModuleBLL.GetCategoryModuleListByType(o.TypeId);

                if (businessCategoryModuleList.Count > 0)
                {
                    businessCategoryModuleList.ForEach((c) =>
                    {
                        TreeNode nd = new TreeNode();
                        nd.Text     = c.CategoryName;
                        nd.Tag      = o.TypeId;
                        nd.Name     = c.CategoryId;
                        nd.ImageKey = "class";

                        ////根据物料父分类ID查找是否包含子分类
                        //List<Model.BusinessCategoryModule> childCategoryModuleList
                        //    = MaterialModuleBLL.GetCategoryModuleListByParentId(nd.Name);

                        //if (childCategoryModuleList.Count > 0)
                        //{
                        //    childCategoryModuleList.ForEach((s) =>
                        //    {
                        //        TreeNode nod = new TreeNode();
                        //        nod.Text = s.CategoryName;
                        //        nod.Tag = o.TypeId;
                        //        nod.Name = s.CategoryId;
                        //        nod.ImageKey = "class";

                        //        nd.Nodes.Add(nod);
                        //    }
                        //    );
                        //}
                        GetChildCategoryModuleList(nd);

                        node.Nodes.Add(nd);
                    });
                }

                parentNode.Nodes.Add(node);
            });
        }