/* * Permet de créer un intervenant en indiquant directement sa spécification (eleve etc) */ public static Intervenant CreateIntervenant(string type) { Console.Write("\nLe nom de la personne : "); string nom = Console.ReadLine(); Console.Write("Son Prénom : "); string prenom = Console.ReadLine(); //Création des rôles de l'intervenant Console.WriteLine("\nVous allez maintenant rentrer le ou les rôles de cette personne."); List <Role> roles = new List <Role>(); bool doneRole = false; do { if (roles.Count == 0) { Console.Write("Indiquez le rôle de cette personne dans ce projet : "); } else { Console.Write("Indiquez un autre rôle ou entrez Y pour quitter : "); } string roleInput = Console.ReadLine(); if (roleInput.ToUpper() == "Y") { doneRole = true; } else { roles.Add(new Role(roleInput)); } }while (!doneRole); //Création de l'intervenant if (type == "eleve") //élève { return(Eleve.CreateEleve(nom, prenom, roles.ToArray())); } else if (type == "enseignant") //enseignant { return(Enseignant.CreateEnseignant(nom, prenom, roles.ToArray())); } else if (type == "externe")//externe { return(Externe.CreateExterne(nom, prenom, roles.ToArray())); } else { return(new Intervenant(nom, prenom, roles.ToArray())); } }
/* * Permet de créer un intervenant en indiquant directement son rôle */ public static Intervenant CreateIntervenant(Role role) { Console.Write("\nLe nom de la personne : "); string nom = Console.ReadLine(); Console.Write("Son Prénom : "); string prenom = Console.ReadLine(); //Sélection spécification de la classe intervenant string inputSpec; bool doneSpec = false; do { Console.WriteLine("Cette personne est un"); Console.WriteLine("Eleve : entrez 1, Enseignant : entrez 2, Externe : entrez 3, Autre : entrez 4"); Regex regSpec = new Regex("^[1-4]$"); inputSpec = Console.ReadLine(); if (regSpec.Match(inputSpec).Success) { doneSpec = true; } else { Console.WriteLine("Votre entrée est incorrecte"); } }while (!doneSpec); //Création des rôles de l'intervenant Role[] roles = new Role[] { role }; //Création de l'intervenant if (inputSpec == "1") //élève { return(Eleve.CreateEleve(nom, prenom, roles)); } else if (inputSpec == "2") //enseignant { return(Enseignant.CreateEnseignant(nom, prenom, roles)); } else if (inputSpec == "3")//externe { return(Externe.CreateExterne(nom, prenom, roles)); } else { return(new Intervenant(nom, prenom, roles)); } }
//Méthodes /* * Interface de création d'un intervenant. Cette fonction permet de créer tous les types * d'intervenants possibles en demandant à l'utilisateur quel type d'intervenant il veut créer. */ public static Intervenant CreateIntervenant() { Console.Write("\nLe nom de la personne : "); string nom = Console.ReadLine(); Console.Write("Son Prénom : "); string prenom = Console.ReadLine(); //Sélection spécification de la classe intervenant string inputSpec; bool doneSpec = false; do { Console.WriteLine("Cette personne est un"); Console.WriteLine("Eleve : entrez 1, Enseignant : entrez 2, Externe : entrez 3, Autre : entrez 4"); Regex regSpec = new Regex("^[1-4]$"); inputSpec = Console.ReadLine(); if (regSpec.Match(inputSpec).Success) { doneSpec = true; } else { Console.WriteLine("Votre entrée est incorrecte"); } }while (!doneSpec); //Création des rôles de l'intervenant Console.WriteLine("\nVous allez maintenant rentrer le ou les rôles de cette personne."); List <Role> roles = new List <Role>(); bool doneRole = false; do { if (roles.Count == 0) { Console.Write("Indiquez le rôle de cette personne dans ce projet : "); } else { Console.Write("Indiquez un autre rôle ou entrez Y pour quitter : "); } string roleInput = Console.ReadLine(); if (roleInput.ToUpper() == "Y") { doneRole = true; } else { roles.Add(new Role(roleInput)); } }while (!doneRole); //Création de l'intervenant if (inputSpec == "1") //élève { return(Eleve.CreateEleve(nom, prenom, roles.ToArray())); } else if (inputSpec == "2") //enseignant { return(Enseignant.CreateEnseignant(nom, prenom, roles.ToArray())); } else if (inputSpec == "3")//externe { return(Externe.CreateExterne(nom, prenom, roles.ToArray())); } else { return(new Intervenant(nom, prenom, roles.ToArray())); } }