Exemple #1
0
 private int[] UwzglednijPoziomyZagniezdzone(int aktualnyPoziom, bool uwzglednijBrygady)
 {
     #region przygotowanie drzewa
     List <TreeNode> _nodes = new List <TreeNode>();
     if (uwzglednijBrygady)
     {
         var wydzialy = context.Wydzialy;
         foreach (Wydzial w in wydzialy)
         {
             _nodes.Add(new TreeNode {
                 id = w.ID, text = w.Nazwa, parent = w.IDParent.ToString()
             });
         }
         Tree tree = TreeBuilder.BuildTree(_nodes);
         // dodanie podległych działów do wyniku - potomków w drzewie
         Tree        y = TreeExtensions.FindNode(tree, aktualnyPoziom);
         List <Tree> x = TreeExtensions.Descendants(y).ToList();
         return(x.Select(t => ( int )t.Id).ToArray());
     }
     else
     {
         var wydzialy = context.Wydzialy.Where(w => w.IsBrygada == uwzglednijBrygady);
         foreach (Wydzial w in wydzialy)
         {
             _nodes.Add(new TreeNode {
                 id = w.ID, text = w.Nazwa, parent = w.IDParent.ToString()
             });
         }
         Tree tree = TreeBuilder.BuildTree(_nodes);
         // dodanie podległych działów do wyniku - potomków w drzewie
         Tree        y = TreeExtensions.FindNode(tree, aktualnyPoziom);
         List <Tree> x = TreeExtensions.Descendants(y).ToList();
         return(x.Select(t => ( int )t.Id).ToArray());
     }
     #endregion
 }