예제 #1
0
 public void BuildRootPart()
 {
     using (IUnitOfWork uow = new UnitOfWork())
     {
         IList <Model.GroupPart> lstGroupPart = uow.GroupPartBaseRepository.All();
         if (lstGroupPart == null)
         {
             return;
         }
         TreeTagPart treeTag;
         foreach (Model.GroupPart cate in lstGroupPart)
         {
             TreeNode node = new TreeNode(cate.GroupPartName);
             treeTag                = new TreeTagPart();
             treeTag.NodeTye        = TreeTagPart.Types.GroupPart;
             treeTag.GroupPartIDTag = cate.GroupPartId;
             node.Tag               = treeTag;
             List <Model.TypePart> lstTypePart = uow.TypePartBaseRepository.FindByGroupID(cate.GroupPartId);
             if (lstTypePart == null)
             {
                 return;
             }
             BuildSubPart(lstTypePart, node, treeTag, uow);
             _mTree.Nodes.Add(node);
         }
         uow.Commit();
     }
 }
예제 #2
0
 private void BuildPart(List <Model.Part> lstSerie, TreeTagPart subTag, TreeNode subNode)
 {
     foreach (Model.Part serie in lstSerie)
     {
         TreeNode    node    = new TreeNode(serie.PartName);
         TreeTagPart treeTag = new TreeTagPart();
         treeTag.NodeTye         = TreeTagPart.Types.Part;
         treeTag.GroupPartIDTag  = subTag.GroupPartIDTag;
         treeTag.TypePartIDTag   = subTag.TypePartIDTag;
         treeTag.SeriesPartIDTag = serie.SeriesPartID;
         treeTag.PartIDTag       = serie.PartID;
         treeTag.PartNumber      = serie.PartNumber;
         node.Tag = treeTag;
         subNode.Nodes.Add(node);
     }
 }
예제 #3
0
 private void BuildSeriePart(List <Model.SeriesPart> lstSeriesPart, TreeTagPart subTag, TreeNode subNode, IUnitOfWork uow)
 {
     foreach (Model.SeriesPart serie in lstSeriesPart)
     {
         TreeNode    node    = new TreeNode(serie.SeriesPartName);
         TreeTagPart treeTag = new TreeTagPart();
         treeTag.NodeTye         = TreeTagPart.Types.SeriesPart;
         treeTag.GroupPartIDTag  = subTag.GroupPartIDTag;
         treeTag.TypePartIDTag   = subTag.TypePartIDTag;
         treeTag.SeriesPartIDTag = serie.SeriesPartId;
         node.Tag = treeTag;
         subNode.Nodes.Add(node);
         List <Model.Part> lstPart = uow.PartBaseRepository.FindBySeriesPartID(serie.SeriesPartId);
         BuildPart(lstPart, treeTag, node);
     }
 }
예제 #4
0
 private void BuildSubPart(List <Model.TypePart> lstTypepart, TreeNode nodeGrouppart, TreeTagPart cateTag, IUnitOfWork uow)
 {
     foreach (Model.TypePart sub in lstTypepart)
     {
         TreeNode    node    = new TreeNode(sub.TypePartName);
         TreeTagPart treeTag = new TreeTagPart();
         treeTag.NodeTye        = TreeTagPart.Types.TypePart;
         treeTag.GroupPartIDTag = cateTag.GroupPartIDTag;
         treeTag.TypePartIDTag  = sub.TypePartID;
         node.Tag = treeTag;
         nodeGrouppart.Nodes.Add(node);
         List <Model.SeriesPart> lstSerie = uow.SeriesPartBaseRepository.FindByTypeID(sub.TypePartID);
         if (lstSerie == null)
         {
             return;
         }
         BuildSeriePart(lstSerie, treeTag, node, uow);
     }
 }
예제 #5
0
        public static TreeNode FindNodePart(TreeNodeCollection NodesCollection, TreeTagPart treeTag)
        {
            TreeNode returnNode = null; // Default value to return

            foreach (TreeNode checkNode in NodesCollection)
            {
                if (checkNode.Tag == treeTag)  //checks if this node name is correct
                {
                    returnNode = checkNode;
                }
                else if (checkNode.Nodes.Count > 0) //node has child
                {
                    returnNode = FindNodePart(checkNode.Nodes, treeTag);
                }

                if (returnNode != null) //check if founded do not continue and break
                {
                    return(returnNode);
                }
            }
            return(null);
        }