Пример #1
0
        /// <summary>
        /// Retourne une personne à partir de son nom
        /// </summary>
        /// <param name="nom">le nom de la personne saisie</param>
        /// <returns>un objet personne</returns>
        public Personne GetPersonne(string nom)
        {
            var newName = "";

            foreach (var chaine in nom.ToLower().Split(' '))
            {
                newName += StringUtils.FirstLetterUpper(chaine) + " ";
            }
            newName = newName.Trim();

            Personne personne;

            if (ListePersonnes.Count(x => string.Equals(x.Nom.ToLower(), newName.ToLower())) > 0)
            {
                personne = ListePersonnes.FirstOrDefault(x => string.Equals(x.Nom.ToLower(), newName.ToLower()));
            }
            else
            {
                personne = new Personne
                {
                    Id  = 0,
                    Nom = newName
                };
            }
            return(personne);
        }
Пример #2
0
 /// <summary>
 /// Ajoute une Personne p à la liste des personnes rattachées à la tache, ne fait rien si la personne est déjà rattachée
 /// </summary>
 /// <param name="p"></param>
 public void AjouterPersonne(Personne p)
 {
     if (!ListePersonnes.Contains(p))
     {
         ListePersonnes.Add(p);
     }
 }
Пример #3
0
        /// <summary>
        /// Cette fonction permet de récupérer les données du fichier texte et de la les stocker dans des variables afin de les exploiter.
        /// </summary>
        /// <param name="texte">Chemin du fichier à charger</param>
        public void ChargerFichier(string texte)
        {
            ListeTaches = new Dictionary <string, TachesProduction>();
            TachesProduction tache;

            string[]  fichier = File.ReadAllLines(texte);
            string[]  temp;
            int       compteur;
            Personnes tempPers = new Personnes();

            Activités[] tabActivité = { Activités.ANF, Activités.ANT, Activités.ARF, Activités.ART, Activités.Aucun, Activités.DBE, Activités.DES, Activités.DEV, Activités.GDP, Activités.INF, Activités.RPT, Activités.TES };
            for (int i = 1; i < fichier.Length - 1; i++)
            {
                temp = fichier[i].Split('\t');
                ListePersonnes.TryGetValue(temp[2], out tempPers);
                compteur = 0;
                while (temp[3].CompareTo(string.Format("{0}", tabActivité[compteur])) != 0)
                {
                    compteur++;
                }
                tache = new TachesProduction(temp[0], temp[1], tempPers, tabActivité[compteur], temp[4], Convert.ToDateTime(temp[5]), Convert.ToDouble(temp[6]), Convert.ToDouble(temp[7]), Convert.ToDouble(temp[8]));
                ListeTaches.Add(tache.Code, tache);
            }
        }
Пример #4
0
        static void Main(string[] args)
        {
            Acteur[] mesActeurs = new Acteur[] {
                new Acteur("Assange", "Julian", new DateTime(1969, 3, 12), 187),
                new Acteur("Paul", "Newmann", new DateTime(1969, 3, 12), 187),
                new Acteur("Becker", "Norma Jean", new DateTime(1969, 3, 12), 187)
            };

            MetteurEnScene[] mesDirecteurs =
            {
                new MetteurEnScene("Spielberg", "Steven",       new DateTime(1969, 3, 12)),
                new MetteurEnScene("Coen",      "Ettan",        new DateTime(1969, 3, 12)),
                new MetteurEnScene("Coppolla",  "Francis Ford", new DateTime(1969, 3, 12))
            };



            Film bigLebow = new Film("The Big Lebowski", 1996);
            Film eT       = new Film("E.T.", 1982);

            eT.AjouterActeur(mesActeurs[0]);
            eT.AjouterActeur(mesActeurs[2]);
            eT.SetMetteurEnScene(mesDirecteurs[0]);

            bigLebow.AjouterActeur(mesActeurs[1]);
            bigLebow.AjouterActeur(mesActeurs[2]);
            bigLebow.SetMetteurEnScene(mesDirecteurs[1]);

            ListePersonnes mesPersonnes = ListePersonnes.GetInstance();

            foreach (Acteur act in mesActeurs)
            {
                mesPersonnes.AjouterPersonne(act);
            }

            foreach (MetteurEnScene sceneur in mesDirecteurs)
            {
                mesPersonnes.AjouterPersonne(sceneur);
            }

            IEnumerator <Personne> acteurIt = mesPersonnes.ListePersonne();

            while (acteurIt.MoveNext())
            {
                Personne personne = acteurIt.Current;
                Console.WriteLine(personne);

                IEnumerator <Film> filmsIt;
                if (personne is Acteur)
                {
                    Console.WriteLine("a joué dans les films suivant:");
                    filmsIt = ((Acteur)personne).FilmsIeEnumerator();
                }
                else
                {
                    if (personne is MetteurEnScene)
                    {
                        Console.WriteLine("a dirigé les films suivant:");
                        filmsIt = ((MetteurEnScene)personne).Films();
                    }
                    else
                    {
                        Console.WriteLine("Est inconnu et n'a rien à faire ici !!! ");
                        continue;
                    }
                }
                while (filmsIt.MoveNext())
                {
                    Film film = filmsIt.Current;
                    Console.WriteLine(film);
                }
            }

            String i = Console.ReadLine();
        }
Пример #5
0
 /// <summary>
 /// Retourne une liste de personnes à partir d'une chaine
 /// </summary>
 /// <param name="query">la chaine à rechercher</param>
 /// <returns>la liste de personne trouvé</returns>
 public IEnumerable <Personne> GetSearchPersonnes(string query)
 {
     return(ListePersonnes.Where(c => c.Nom.IndexOf(query, StringComparison.CurrentCultureIgnoreCase) > -1).OrderByDescending(c => c.Nom.StartsWith(query, StringComparison.CurrentCultureIgnoreCase)));
 }