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(); } } } }
public FrmCollaborateurs() { InitializeComponent(); ListeRegion.getRegions(); ListeSecteurs.getSecteurs(); ListeRole.getRoles(); List <Collaborateur> oui; oui = ListeCollaborateurs.getCollaborateurs(); ConstructionTreeview(); // TODO : Affichage de l'arborescence présentant les secteurs, les régions et les collaborateurs en poste }
private void ConstructionTreeview() { TreeNode n; TreeNode racine; // TODO : Requete LINQ pour obtenir les secteurs racine = tvOrganisation.Nodes.Add("KELLER THOMANN & TASSET - Gestion des ressources humaines"); var req = from unSecteur in ListeSecteurs.getSecteurs() where !(unSecteur.Code.Equals(0)) select unSecteur; foreach (Secteur s in req.ToList()) { n = racine.Nodes.Add(s.Libelle); n.Nodes.Add("-"); // noeud fictif } }
private void ConstructionTreeview() { TreeNode n; TreeNode racine; TreeNode second; TreeNode troisieme; Poste p; // TODO : Requete LINQ pour obtenir les secteurs var req = from secteur in ListeSecteurs.getSecteurs() select secteur; var req2 = from collab in ListeCollaborateurs.getLesCollaborateurs() select collab; racine = tvOrganisation.Nodes.Add("KELLER THOMANN & TASSET - Gestion des ressources humaines"); foreach (Secteur s in req.ToList()) { n = racine.Nodes.Add(s.Libelle); second = n; foreach (Region r in s._Regions) { n = second.Nodes.Add(r.Libelle); troisieme = n; foreach (Collaborateur c in ListeCollaborateurs.getLesCollaborateurs()) { if (c._Postes.Count() > 0) { p = c._Postes.Last(); if (p.Region == r.Code) { n = troisieme.Nodes.Add(c.Prenom + " " + c.Nom); } } } } } racine.Nodes[0].Remove(); }
public static List <Collaborateur> getCollaborateurs() { if (lesCollaborateurs == null) { List <Collaborateur> lesCollaborateurs = new List <Collaborateur>(); List <Role> lesRoles = RoleDAO.getRoles(); List <Secteur> lesSecteurs = SecteurDAO.getSecteurs(); List <Region> lesRegions = RegionDAO.getRegions(); Collaborateur unCollaborateur; SqlConnection ctn = new SqlConnection(Connexion.getChaine()); ctn.Open(); string req = "select * from COLLABORATEUR"; SqlCommand cmd = new SqlCommand(req, ctn); SqlDataReader jeu = cmd.ExecuteReader(); while (jeu.Read()) { unCollaborateur = new Collaborateur(int.Parse(jeu[0].ToString()), jeu[1].ToString(), jeu[2].ToString(), jeu[3].ToString(), jeu[4].ToString(), jeu[5].ToString(), DateTime.Parse(jeu[6].ToString())); lesCollaborateurs.Add(unCollaborateur); } jeu.Close(); // TODO : Ajouter les postes à l'objet unCollaborateur string req2 = "SELECT * FROM Poste ORDER BY Id_Collaborateur ASC, DateDebutPoste DESC"; cmd = new SqlCommand(req2, ctn); jeu = cmd.ExecuteReader(); bool continuer = jeu.Read(); while (continuer) { int idCourant = int.Parse(jeu[0].ToString()); Collaborateur leCollab = lesCollaborateurs.FirstOrDefault(r => r.Id == idCourant); while (continuer && int.Parse(jeu[0].ToString()) == idCourant) { //Poste unPoste = new Poste(DateTime.Parse(jeu[1].ToString()), ListeRole.getRoleById(int.Parse(jeu[5].ToString()))); DateTime nul; if (jeu[2].ToString() == "") { nul = new DateTime(110, 5, 29, 11, 15, 0); //date fictive } else { nul = DateTime.Parse(jeu[2].ToString()); } DateTime test = DateTime.Parse(jeu[1].ToString()); DateTime test2 = nul; Role test3 = ListeRole.getRoleById(int.Parse(jeu[5].ToString())); Poste unPoste = new Poste(DateTime.Parse(jeu[1].ToString()), nul, ListeRole.getRoleById(int.Parse(jeu[5].ToString())), ListeRegion.getRegionByCode(int.Parse(jeu[3].ToString())), ListeSecteurs.getSecteurByCode(int.Parse(jeu[4].ToString()))); leCollab.Postes.Add(unPoste); continuer = jeu.Read(); } } jeu.Close(); ctn.Close(); } return(lesCollaborateurs); }
public static Secteur getSecteurByLibelle(string unLibelle) { return(ListeSecteurs.getSecteurs().FirstOrDefault(r => r.Libelle == unLibelle)); }
public static Secteur getSecteurByCode(int unCode) { return(ListeSecteurs.getSecteurs().FirstOrDefault(r => r.Code == unCode)); }
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; }