예제 #1
0
        public void EmprunterOeuvre()
        {
            Console.WriteLine("Numéro de l'oeuvre à emprunter : ");
            Int32.TryParse(Console.ReadLine(), out int id);
            oeuvre = mediatheque.GetOeuvreById(id);
            if (oeuvre != null)
            {
                if (oeuvre.Status == "disponible")
                {
                    //méthode changer status de l'oeuvre en emprunté
                    DateTime dateEmprunt = DateTime.Now;
                    DateTime dateRetour  = dateEmprunt.AddDays(15);
                    mediatheque.Emprunte += () => ChangeText("Livre n°" + id + " emprunté", ConsoleColor.Yellow);
                    mediatheque.Emprunter(id, "emprunté", dateEmprunt, dateRetour);
                }
                else
                {
                    ChangeText("Désolé, cet oeuvre n'est pas disponible", ConsoleColor.Magenta);
                }
            }

            else
            {
                ChangeText("Pas d'oeuvre à ce numéro", ConsoleColor.Red);
            }
        }
예제 #2
0
        public void RendreOeuvre()
        {
            Console.WriteLine("votre identifiant : ");
            Int32.TryParse(Console.ReadLine(), out int identifiant);
            //on recherche l'adhérent
            adherent = mediatheque.GetAdherentById(identifiant);
            if (adherent != null)
            {
                Console.WriteLine(adherent);

                if (adherent.OeuvreEmprunte.Count > 0)
                {
                    Console.WriteLine("Numéro de l'oeuvre à rendre : ");
                    Int32.TryParse(Console.ReadLine(), out int id);
                    oeuvre = mediatheque.GetOeuvreById(id);
                    if (oeuvre != null)
                    {
                        mediatheque.OeuvreDispo += () => ChangeText("Livre n°" + id + " est disponible", ConsoleColor.Green);
                        mediatheque.OeuvreDispo += AlertSonore;
                        DateTime dateRendu = DateTime.Now;
                        mediatheque.Rendre(id, dateRendu, "disponible", identifiant);
                    }
                }
                else
                {
                    ChangeText("votre liste est vide!!", ConsoleColor.Red);
                }
            }

            else
            {
                ChangeText("Vous n'êtes pas inscrit, veuillez vous inscrire", ConsoleColor.Red);
            }
        }
예제 #3
0
        public void DeleteOeuvre()
        {
            ChangeText("***************Liste des Oeuvres****************", ConsoleColor.Magenta);
            ListOeuvre();
            Console.WriteLine("numéro oeuvre à supprimer : ");
            Int32.TryParse(Console.ReadLine(), out int numero);

            oeuvre = mediatheque.GetOeuvreById(numero);
            if (oeuvre != null)
            {
                if (oeuvre.Status == "disponible")
                {
                    mediatheque.SupprimerOeuvre(oeuvre);
                    ChangeText("oeuvre n° " + numero + " supprimé", ConsoleColor.Red);
                }

                else
                {
                    ChangeText("L'oeuvre est emprunté !", ConsoleColor.Red);
                }
            }
            else
            {
                ChangeText("Pas d'article à ce numéro", ConsoleColor.Red);
            }
        }
예제 #4
0
 public void RendreOeuvre()
 {
     Console.WriteLine("Numéro de l'oeuvre à rendre : ");
     Int32.TryParse(Console.ReadLine(), out int id);
     oeuvre = mediatheque.GetOeuvreById(id);
     if (oeuvre != null)
     {
         mediatheque.OeuvreDispo += () => ChangeText("Livre n°" + id + " est disponible", ConsoleColor.Green);
         DateTime dateRendu = DateTime.Now;
         mediatheque.Rendre(id, dateRendu, "disponible");
     }
 }
예제 #5
0
        public void EmprunterOeuvre()
        {
            //Affichage de la liste des oeuvres pour pouvoir choisir
            ListOeuvre();
            Console.WriteLine("votre identifiant : ");
            Int32.TryParse(Console.ReadLine(), out int identifiant);
            adherent = mediatheque.GetAdherentById(identifiant);

            if (adherent != null)
            {
                Console.WriteLine("Numéro de l'oeuvre à emprunter : ");
                Int32.TryParse(Console.ReadLine(), out int id);
                //on récupère l'oeuvre correspondante au numéro à emprunter
                oeuvre = mediatheque.GetOeuvreById(id);
                //si cette oeuvre existe, et si son status est disponible alors on procède à son emprunt
                if (oeuvre != null)
                {
                    if (oeuvre.Status == "disponible")
                    {
                        //méthode changer status de l'oeuvre en emprunté
                        DateTime dateEmprunt = DateTime.Now;
                        /*On ajoute 15 jours à la date d'emprunt via la méthode AddDays(nombre de jours à ajouter en int)*/
                        DateTime dateRetour = dateEmprunt.AddDays(15);
                        /*on abonne l'événement définit dans Mediatheque à une méthode sans paramètre qui envoit un message */
                        mediatheque.Emprunte += () => ChangeText("Livre n°" + id + " emprunté", ConsoleColor.Yellow);
                        /*j'ai abonné une autre méthode(voir plus bas) à lévénement qui déclenche un effet sonore*/
                        mediatheque.Emprunte += AlertSonore;
                        /*en appelant la méthode Emprunter décrit dans Mediatheque, on déclenche également l'événement qu'on a mis à l'intérieur de Emprunter*/
                        //dans la méthode emprunter on sauvegarde et on ajoute l'oeuvre empruntée au compte de l'adhérent
                        mediatheque.Emprunter(id, "emprunté", dateEmprunt, dateRetour, identifiant);
                    }
                    //sinon on affiche un message
                    else
                    {
                        ChangeText("Désolé, cet oeuvre n'est pas disponible", ConsoleColor.Magenta);
                    }
                }
                //si l'oeuvre n'appartient pas à la médiathèque, on affiche un message
                else
                {
                    ChangeText("Pas d'oeuvre à ce numéro", ConsoleColor.Red);
                }
            }

            else
            {
                ChangeText("Vous n'êtes pas inscrit, veuillez vous inscrire", ConsoleColor.Red);
            }
        }
예제 #6
0
        /*****************************************METHODES******************************************/
        /***************************************************************************************/
        public Oeuvre AddOeuvre()
        {
            Console.Write("titre de l'oeuvre : ");
            string titre = Console.ReadLine();

            Console.Write("type de l'oeuvre : ");
            string type = Console.ReadLine();

            oeuvre = new Oeuvre(titre, type, mediatheque.ListeOeuvre.Count < 1 ? 1 : mediatheque.ListeOeuvre[mediatheque.ListeOeuvre.Count - 1].Id + 1);

            mediatheque.AjouterOeuvre(oeuvre);

            Console.WriteLine("oeuvre ajouté avec le numéro " + oeuvre.Id);

            return(oeuvre);
        }