private void tvOrganisation_BeforeExpand(object sender, TreeViewCancelEventArgs e)
        {
            TreeNode n      = (TreeNode)e.Node;
            TreeNode parent = (TreeNode)n.Parent;
            TreeNode enfant;

            char[] delimiterChars = { '\\' };
            // TO DO éclater le fullpath
            string[] words = n.FullPath.Split(delimiterChars);
            if (words.Length == 2)
            {
                // traitement secteur
                //n.Nodes[0].Remove();
                Secteur s = ListeSecteurs.getSecteurByLibelle(n.Text);
            }
            else
            {
                if (words.Length == 3)
                {
                    // traitement région
                    var req = from region in ListeRegion.getRegions()
                              select region;
                    Region r = ListeRegion.getRegionByLibelle(n.Text);

                    // suppression du noeud fictif
                    if (req.ToList().Count > 0)
                    {
                        //n.Nodes[0].Remove();
                    }
                }
            }
        }
예제 #2
0
 public static List <Secteur> getSecteurs()
 {
     if (lesSecteurs == null)
     {
         SqlCommand    cmd;
         SqlDataReader jeu;
         lesSecteurs = new List <Secteur>();
         Secteur       unSecteur;
         SqlConnection ctn = new SqlConnection(Connexion.getChaine());
         ctn.Open();
         string req = "select * from SECTEUR";
         cmd = new SqlCommand(req, ctn);
         jeu = cmd.ExecuteReader();
         while (jeu.Read())
         {
             unSecteur = new Secteur(int.Parse(jeu[0].ToString()), jeu[1].ToString());
             lesSecteurs.Add(unSecteur);
         }
         jeu.Close();
         foreach (Secteur s in lesSecteurs)
         {
             string req2 = "select * from REGION where codeSecteur = '" + s.Code + "'";
             cmd = new SqlCommand(req2, ctn);
             jeu = cmd.ExecuteReader();
             while (jeu.Read())
             {
                 Region uneRegion = new Region(int.Parse(jeu[0].ToString()), jeu[1].ToString());
                 s._Regions.Add(uneRegion);
             }
             jeu.Close();
         }
         ctn.Close();
     }
     return(lesSecteurs);
 }
예제 #3
0
 public Poste(DateTime uneDateDebut, DateTime uneDateFin, Role unRole, Region uneRegion, Secteur unSecteur)
 {
     dateDebut = uneDateDebut;
     dateFin   = uneDateFin;
     leRole    = unRole;
     laRegion  = uneRegion;
     leSecteur = unSecteur;
 }
예제 #4
0
        private void tvOrganisation_BeforeExpand(object sender, TreeViewCancelEventArgs e)
        {
            TreeNode n      = (TreeNode)e.Node;
            TreeNode parent = (TreeNode)n.Parent;
            TreeNode enfant;

            char[] delimiterChars = { '\\' };

            char[]   separateurs = { '\\' };
            string[] elements    = n.FullPath.Split(separateurs);

            if (elements.Length == 2)
            {
                // traitement secteur
                n.Nodes[0].Remove();
                Secteur s = ListeSecteurs.getSecteurByLibelle(n.Text);
                foreach (Region r in s._Regions)
                {
                    enfant = n.Nodes.Add(r.Libelle);
                    enfant.Nodes.Add("Pas de visiteurs");
                }



                var req2 = from c in ListeCollaborateurs.getCollaborateurs()
                           from p in c.Postes
                           where (p.dateDeb == c.Postes.Max(p1 => p1.dateDeb) &&
                                  (p.Secteur.Code == s.Code) && p.Role.Id == 1)
                           select c;

                foreach (Collaborateur c in req2.ToList())
                {
                    enfant = n.Nodes.Add(c.Prenom.Trim(char.Parse(" ")) + " " + c.Nom);
                }
            }
            else
            {
                if (elements.Length == 3)
                {
                    // traitement region
                    Region r = ListeRegion.getRegionByLibelle(n.Text);

                    var req = from c in ListeCollaborateurs.getCollaborateurs()
                              from p in c.Postes
                              where (p.dateDeb == c.Postes.Max(p1 => p1.dateDeb) &&
                                     (p.Region.Code == r.Code) && p.Role.Id != 1)
                              select c;


                    // && p._Role.Code != 1

                    if (req.ToList().Count > 0)
                    {
                        n.Nodes[0].Remove();
                    }

                    foreach (Collaborateur c in req.ToList())
                    {
                        enfant = n.Nodes.Add(c.Prenom.Trim(char.Parse(" ")) + " " + c.Nom);
                        //enfant = n.Nodes.Add(c.Id());
                    }
                }
            }
            //DG1.DataSource = enfant;
        }