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); } }
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); } }
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); } }
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"); } }
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); } }
/*****************************************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); }