Example #1
0
        //Il faut une fonction permettant de changer l'affectation d'un monstre d'une atttraction a une autre
        public void ChangerAffectationTravailleurAttractionAUneAutre() // En paramètre : int matriculePersonnel, int matriculeAttraction
        {
            Console.WriteLine("BIENVENUE DANS LA GESTION DES AFFECTATIONS D'UN MONSTRE SUR UNE AUTRE ATTRACTION");
            Console.WriteLine("--------------------------------------------------");
            Console.WriteLine("Nous allons pour le monstre suivant et l'attraction suivante effectuer une affectation");
            int      matriculePersonnel  = 66254;
            int      matriculeAttraction = 112;
            CMonstre personnelATrouver   = (CMonstre)m_toutLePersonnelListPers.Find(delegate(CPersonnel personnelAAffecter) //on cast car logique c'est un montre concerné par le matricule
                                                                                    { return(personnelAAffecter.MatriculeInt == matriculePersonnel); });
            //On récupère dans la liste des attractions celle que l'on veut mettre en maintenance
            CAttraction attractionATrouver = m_attractionsListAttr.Find(delegate(CAttraction attraction)
                                                                        { return(attraction.IdentifiantInt == matriculeAttraction); });

            Console.WriteLine(attractionATrouver.DisplayObject());
            Console.WriteLine(personnelATrouver.DisplayObject());
            Console.WriteLine("Appuyer sur une touche pour continuer...");
            Console.ReadKey();
            //on stock les infos de l'attraction dans l'attribut affectation du monstre
            personnelATrouver.ChangerAffectation(attractionATrouver); //attribut attraction du monstre = attraction
            //inversement, on ajoute les monstres dans l'attributs equipeMonstre de chacun des attractions
            attractionATrouver.AjouterUnMonstreALEquipe(personnelATrouver);
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("Changement effectué ! Le monstre n° " + matriculePersonnel + " travaille maintenant sur l'attraction n° " + matriculeAttraction + ".\nStatut :");
            Console.WriteLine("------------------------------------------------------------------------------------------------------------");
            Console.WriteLine(attractionATrouver.DisplayObject());
            Console.WriteLine(personnelATrouver.DisplayObject());
            Console.WriteLine("--------------------------------FIN GESTION DES AFFECTATIONS---------------------------------------------");
            Console.ForegroundColor = ConsoleColor.Gray;
        }
Example #2
0
        public void VoirListDesLibresPourAffectation()
        {
            //try
            //{
            Console.WriteLine("BIENVENUE DANS L'ESPACE D'AFFECTATION DES MEMBRES DU PERSONNEL LIBREs A UNE ATTRACTION");
            Console.WriteLine("--------------------------------------------------------------------------------------\n");
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Voici la liste du personnel libre : ");
            Console.ForegroundColor = ConsoleColor.Gray;
            AffichagePersonnelStatutDesire("libre");
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Voici la liste des attractions existantes dans le parc : ");
            Console.ForegroundColor = ConsoleColor.Gray;
            AffichageListeAttraction(m_attractionsListAttr);
            Console.ForegroundColor = ConsoleColor.Blue;
            Console.WriteLine("On choisit le matricule d'un membre du personnel que l'on souhaite affecter, par exemple: 66654");
            int reponseUtilisateurPersonnelInt = Int32.Parse(Console.ReadLine());

            Console.WriteLine("On choisit le matricule de l'attraction sur laquelle le membre du personnel va êre affecté par exemple: 112");
            int reponseUtilisateurAttraction = Int32.Parse(Console.ReadLine());

            Console.ForegroundColor = ConsoleColor.Gray;
            CMonstre personnel = (CMonstre)m_toutLePersonnelListPers.Find(delegate(CPersonnel personnelAAffecter)                                          //on cast car logique c'est un montre concernéar le matricule
                                                                          { return(personnelAAffecter.MatriculeInt == reponseUtilisateurPersonnelInt); }); //ici on cherche dans la liste le membre ayant le matricule entréar l'utilsateur dans la liste complete
                                                                                                                                                           // ICI il faut aussi trouver la bonne attraction
            CAttraction attraction = m_attractionsListAttr.Find(delegate(CAttraction attractionAffectee)
                                                                { return(attractionAffectee.IdentifiantInt == reponseUtilisateurAttraction); });

            //on met a jour l'affection du membre du personnel
            personnel.ChangerAffectation(attraction); //l'intituléu statut est MAJ en meme temps
                                                      //on met a jour la liste des travailleurs sur une attraction
            attraction.AjouterUnMonstreALEquipe(personnel);
            //}
            //catch(Exception e)
            //{
            //    Console.WriteLine("Erreur dans VoirListDesLibresPourAffectation()" + e.Message);
            //}
        }