public static void AfficherMenuPrincipal() { ConsoleKeyInfo keyPressed; // Nous permettra de récupérer l'entrée du clavier afin de bouger dans le menu int positionCurseur = 1; // On initialise le curseur à 1 : Position sur "Créer un projet" do // On met à jour l'affichage en fonction des touches pressées (haut/bas/entrée) { Bandeau(); if (positionCurseur == 1) // le curseur est déplacé en fonction de la valeur de positionCurseur qui est mis à jour plus bas en fonction // des touches pressées { Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Créer un projet"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Visualiser les projets"); } else if (positionCurseur == 2) { Console.WriteLine("Créer un projet"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Visualiser les projets"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; } keyPressed = Console.ReadKey(); // récupération de la touche pressée if (keyPressed.Key == ConsoleKey.UpArrow) // selon la touche pressée on déplace le curseur { if (positionCurseur == 1) { positionCurseur = 2; } else if (positionCurseur == 2) { positionCurseur = 1; } } else if (keyPressed.Key == ConsoleKey.DownArrow) { if (positionCurseur == 1) { positionCurseur = 2; } else if (positionCurseur == 2) { positionCurseur = 1; } } Console.Clear(); }while (keyPressed.Key != ConsoleKey.Enter); // On sort de la boucle si la touche pressée est entrée et on renvoie le choix de l'utilisateur // On retourne la position du curseur au moment où on appuie sur la touche entrée // Celle-ci sera récupérée par le main pour savoir quel choix nous avons fait et effectuer les enchainements de fonctions. switch (positionCurseur) { case 1: Projet.CreationProjet(); break; case 2: Projet.AffichageProjets(); break; } }
public static void AfficherMenuFicheProjet(int _referenceprojet) { Projet.AffichageFicheProjet(_referenceprojet); Console.WriteLine(""); ConsoleKeyInfo keyPressed; // Nous permettra de récupérer l'entrée du clavier afin de bouger dans le menu int positionCurseur = 1; // On initialise le curseur à 1 : Position sur "Créer un projet" do // On met à jour l'affichage en fonction des touches pressées (haut/bas/entrée) { if (positionCurseur == 1) // le curseur est déplacé en fonction de la valeur de positionCurseur qui est mis à jour plus bas en fonction // des touches pressées { Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Modifier le projet"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Retour à la liste de projets"); Console.WriteLine("Retour au menu principal"); Console.WriteLine("Quitter le gestionnaire"); } else if (positionCurseur == 2) { Console.WriteLine("Modifier le projet"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Retour à la liste de projets"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Retour au menu principal"); Console.WriteLine("Quitter le gestionnaire"); } else if (positionCurseur == 3) { Console.WriteLine("Modifier le projets"); Console.WriteLine("Retour à la liste de projets"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Retour au menu principal"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Quitter le gestionnaire"); } else if (positionCurseur == 4) { Console.WriteLine("Modifier le projet"); Console.WriteLine("Retour à la liste de projets"); Console.WriteLine("Retour au menu principal"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Quitter le gestionnaire"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; } keyPressed = Console.ReadKey(); // récupération de la touche pressée if (keyPressed.Key == ConsoleKey.UpArrow) // selon la touche pressée on déplace le curseur { if (positionCurseur == 1) { positionCurseur = 4; } else if (positionCurseur == 2) { positionCurseur = 1; } else if (positionCurseur == 3) { positionCurseur = 2; } else if (positionCurseur == 4) { positionCurseur = 3; } } else if (keyPressed.Key == ConsoleKey.DownArrow) { if (positionCurseur == 1) { positionCurseur = 2; } else if (positionCurseur == 2) { positionCurseur = 3; } else if (positionCurseur == 3) { positionCurseur = 4; } else if (positionCurseur == 4) { positionCurseur = 1; } } //Pour réinitialiser l'affichage sans écraser le reste de la console Console.SetCursorPosition(0, Console.CursorTop - 1); ClearCurrentConsoleLine(); Console.SetCursorPosition(0, Console.CursorTop - 1); ClearCurrentConsoleLine(); Console.SetCursorPosition(0, Console.CursorTop - 1); ClearCurrentConsoleLine(); Console.SetCursorPosition(0, Console.CursorTop - 1); ClearCurrentConsoleLine(); }while (keyPressed.Key != ConsoleKey.Enter); // On sort de la boucle si la touche pressée est entrée et on renvoie le choix de l'utilisateur switch (positionCurseur) { case 1: Projet.ModifierProjet(_referenceprojet); AfficherMenuFicheProjet(_referenceprojet); break; case 2: Projet.AffichageProjets(); break; case 3: Menu.AfficherMenuPrincipal(); break; case 4: Environment.Exit(0); break; } }
public static void AfficherMenuProjets() { ConsoleKeyInfo keyPressed; // Nous permettra de récupérer l'entrée du clavier afin de bouger dans le menu int positionCurseur = 1; // On initialise le curseur à 1 : Position sur "Visualiser l'ensemble des projets" do // On met à jour l'affichage en fonction des touches pressées (haut/bas/entrée) { Menu.Bandeau(); if (positionCurseur == 1) // le curseur est déplacé en fonction de la valeur de positionCurseur qui est mis à jour plus bas en fonction // des touches pressées { Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Visualiser l'ensemble des projets"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Filtrer les projets par élève"); Console.WriteLine("Filtrer les projets par promotion"); Console.WriteLine("Filtrer les projets par année de scolarité"); Console.WriteLine("Filtrer par mots clés"); Console.WriteLine("Retour au menu principal"); } else if (positionCurseur == 2) { Console.WriteLine("Visualiser l'ensemble des projets"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Filtrer les projets par élève"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Filtrer les projets par promotion"); Console.WriteLine("Filtrer les projets par année de scolarité"); Console.WriteLine("Filtrer par mots clés"); Console.WriteLine("Retour au menu principal"); } else if (positionCurseur == 3) { Console.WriteLine("Visualiser l'ensemble des projets"); Console.WriteLine("Filtrer les projets par élève"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Filtrer les projets par promotion"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Filtrer les projets par année de scolarité"); Console.WriteLine("Filtrer par mots clés"); Console.WriteLine("Retour au menu principal"); } else if (positionCurseur == 4) { Console.WriteLine("Visualiser l'ensemble des projets"); Console.WriteLine("Filtrer les projets par élève"); Console.WriteLine("Filtrer les projets par promotion"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Filtrer les projets par année de scolarité"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Filtrer par mots clés"); Console.WriteLine("Retour au menu principal"); } else if (positionCurseur == 5) { Console.WriteLine("Visualiser l'ensemble des projets"); Console.WriteLine("Filtrer les projets par élève"); Console.WriteLine("Filtrer les projets par promotion"); Console.WriteLine("Filtrer les projets par année de scolarité"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Filtrer par mots clés"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Retour au menu principal"); } else { Console.WriteLine("Visualiser l'ensemble des projets"); Console.WriteLine("Filtrer les projets par élève"); Console.WriteLine("Filtrer les projets par promotion"); Console.WriteLine("Filtrer les projets par année de scolarité"); Console.WriteLine("Filtrer par mots clés"); Console.ForegroundColor = ConsoleColor.Black; Console.BackgroundColor = ConsoleColor.White; Console.WriteLine("Retour au menu principal"); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; } keyPressed = Console.ReadKey(); // récupération de la touche pressée if (keyPressed.Key == ConsoleKey.UpArrow) // selon la touche pressée on déplace le curseur { if (positionCurseur == 1) { positionCurseur = 6; } else if (positionCurseur == 2) { positionCurseur = 1; } else if (positionCurseur == 3) { positionCurseur = 2; } else if (positionCurseur == 4) { positionCurseur = 3; } else if (positionCurseur == 5) { positionCurseur = 4; } else if (positionCurseur == 6) { positionCurseur = 5; } } else if (keyPressed.Key == ConsoleKey.DownArrow) { if (positionCurseur == 1) { positionCurseur = 2; } else if (positionCurseur == 2) { positionCurseur = 3; } else if (positionCurseur == 3) { positionCurseur = 4; } else if (positionCurseur == 4) { positionCurseur = 5; } else if (positionCurseur == 5) { positionCurseur = 6; } else if (positionCurseur == 6) { positionCurseur = 1; } } Console.Clear(); }while (keyPressed.Key != ConsoleKey.Enter); // On sort de la boucle si la touche pressée est entrée et on renvoie le choix de l'utilisateur switch (positionCurseur) { case 1: Projet.AffichageProjets(); break; case 2: Projet.RechercheParEleve(); break; case 3: Projet.RechercheParPromo(); break; case 4: Projet.RechercheParAnnee(); break; case 5: Projet.RechercheParMotCle(); break; case 6: Menu.AfficherMenuPrincipal(); break; } }
public static void CreationXML() //Intervenant, Livrables, Matieres, Roles et Projet { //Creation liste XML types Type t1 = new Type("Projet transdisciplinaire", 1); Type t2 = new Type("Projet transpromotion", 2); Type t3 = new Type("Projet de semestre", 3); Type t4 = new Type("Projet de fin d'études (PFE)", 4); List <Type> type = new List <Type>(); type.Add(t1); type.Add(t2); type.Add(t3); type.Add(t4); XmlSerializer xt = new XmlSerializer(typeof(List <Type>)); using (StreamWriter wt = new StreamWriter("types.xml")) { xt.Serialize(wt, type); } //Creation liste XML matières Matiere m1 = new Matiere("Anglais", 1); Matiere m2 = new Matiere("Mathématiques", 2); Matiere m3 = new Matiere("Programmation", 3); List <Matiere> matiere = new List <Matiere>(); matiere.Add(m1); matiere.Add(m2); matiere.Add(m3); XmlSerializer xb = new XmlSerializer(typeof(List <Matiere>)); using (StreamWriter wb = new StreamWriter("matieres.xml")) { xb.Serialize(wb, matiere); } //Creation liste XML livrables Livrable l1 = new Livrable("Rapport", 1, ""); Livrable l2 = new Livrable("Soutenance", 2, ""); Livrable l3 = new Livrable("Planning", 3, ""); List <Livrable> livrable = new List <Livrable>(); livrable.Add(l1); livrable.Add(l2); livrable.Add(l3); Livrable test1 = new Livrable("Rapport", 1, "21 mai 2020"); Livrable test2 = new Livrable("Soutenance", 2, "21 mai 2020"); List <Livrable> livrabletest = new List <Livrable>(); livrabletest.Add(test1); livrabletest.Add(test2); XmlSerializer xa = new XmlSerializer(typeof(List <Livrable>)); using (StreamWriter wa = new StreamWriter("livrables.xml")) { xa.Serialize(wa, livrable); } //Creation liste XML intervenants Eleve e1 = new Eleve("Vallcaneras", "Julie", 2022, 1); Eleve e2 = new Eleve("Pierre", "Fanny", 2022, 1); Professeur prof1 = new Professeur("Pesquet", "Baptiste"); Professeur prof2 = new Professeur("Clermont", "Edwige"); List <Intervenant> intervenant = new List <Intervenant>(); intervenant.Add(e1); intervenant.Add(e2); intervenant.Add(prof1); intervenant.Add(prof2); XmlSerializer xs = new XmlSerializer(typeof(List <Intervenant>)); using (StreamWriter wr = new StreamWriter("intervenants.xml")) { xs.Serialize(wr, intervenant); } //Creation liste XML roles Role r1 = new Role("Evaluateur", 1); Role r2 = new Role("Evalué", 2); Role r3 = new Role("Client", 3); Role r4 = new Role("Chef de projet", 4); Role r5 = new Role("Fabricant", 5); List <Role> role = new List <Role>(); role.Add(r1); role.Add(r2); role.Add(r3); role.Add(r4); role.Add(r5); XmlSerializer xy = new XmlSerializer(typeof(List <Role>)); using (StreamWriter ws = new StreamWriter("roles.xml")) { xy.Serialize(ws, role); } //Creation liste XML projets Projet p1 = new Projet(1, "Test1", t1, 12, matiere, livrabletest, intervenant, role); Projet p2 = new Projet(2, "Test2", t2, 12, matiere, livrabletest, intervenant, role); Projet p3 = new Projet(3, "Test3", t3, 12, matiere, livrabletest, intervenant, role); List <Projet> projet = new List <Projet>(); projet.Add(p1); projet.Add(p2); projet.Add(p3); XmlSerializer xc = new XmlSerializer(typeof(List <Projet>)); using (StreamWriter wc = new StreamWriter("projets.xml")) { xc.Serialize(wc, projet); } XmlSerializer serializer = new XmlSerializer(typeof(List <Intervenant>)); // Initialisation de l'outils de serialisation List <Intervenant> dezerializedList = null; // Pour que la liste soit accessible en dehors du using filestream... using (FileStream stream = File.OpenRead("intervenants.xml")) { dezerializedList = (List <Intervenant>)serializer.Deserialize(stream); // On récupère le contenu du fichier que l'on met dans notre liste } }