public static T MenuRecherchePersonneMode <T>(bool demanderChoix) where T : Personne { Recherche.FonctionRecherche <T> modeDeRechercheChoisi = InteractionUtilisateur.DemanderChoixObjet <Recherche.FonctionRecherche <T> >("Choisir le mode de recherche :", new Recherche.FonctionRecherche <T>[] { Recherche.RechercheParNomPersonneTypee <T>, Recherche.RechercheParNumTelPersonneTypee <T> }, new string[] { "Recherche par nom", "Recherche par numéro de téléphone" } ); //on obtient la fonction de recherche correspondant au choix utilisateur //On lance une recherche avec cette fonction de recherche choisie. return(InteractionUtilisateur.RechercherUnElement <T>(modeDeRechercheChoisi, demanderChoix)); }
public static Don MenuRechercheDonMode <T>(bool demanderChoix) where T : Materiel { Recherche.FonctionRecherche <Don> modeDeRechercheChoisi = InteractionUtilisateur.DemanderChoixObjet <Recherche.FonctionRecherche <Don> >("Choisir le mode de recherche :", new Recherche.FonctionRecherche <Don>[] { Recherche.RechercheDonParStatutType <T>, Recherche.RechercheDonParMoisType <T>, }, new string[] { $"Recherche par statut des dons de {typeof(T).Name}", $"Recherche par mois des dons de {typeof(T).Name}" } ); //on obtient la fonction de recherche correspondant au choix utilisateur //On recherche des dons avec. return(InteractionUtilisateur.RechercherUnElement <Don>(modeDeRechercheChoisi, demanderChoix)); }
/// <summary> /// Fonction demandant à l'utilisateur de choisir une instance de lieu de stockage, puis retournant une liste de dons stockés dedans dont l'objet est de type M, triés selon la propriété dont on a le get en argument /// </summary> /// <typeparam name="T">Type de l'élément à comparer</typeparam> /// <typeparam name="M">Type de l'objet du don. Par exemple Materiel</typeparam> /// <param name="message">Message à afficher avant la liste d'objets</param> /// <param name="fonctionObtentionPropriete"></param> public static void sousMenuTriLieuStockage <M, T>(string message, FonctionObtentionProprieteDon <T> fonctionObtentionPropriete) where T : IComparable <T> where M : Materiel { LieuStockage lieuStockageDon = InteractionUtilisateur.RechercherUnElement(Recherche.RechercheParNomLieuStockageType <LieuStockage>, true, "nom (Ne rien entrer les affichera tous.)"); InteractionUtilisateur.ListerObjets <Don>(message, TriLieuStockage <M, T>(lieuStockageDon, fonctionObtentionPropriete)); }