/// <summary> /// Affiche de façon formatée les données des dossiers contenus dans une liste de dossiers /// Cette méthode affiche les dossiers compets avec les prestations et intervenants. /// </summary> /// <param name="lesDossiers">Les Dossiers à afficher</param> public static void AfficherDossiers(List <Dossier> lesDossiers) { foreach (Dossier unDossier in lesDossiers) { TraitementXML.AfficherDossier(unDossier); } }
/// <summary> /// construit, à partir d'un noeud XML un objet de la classe Dossier. /// Avec, ses prestations et les intervenants des prestations /// </summary> /// <param name="unDossierXML">Elément XML du dossier à créer</param> /// <returns>Un objet de la classe Dossier</returns> public static Dossier XmlToDossier(XmlElement unDossierXML) { string nom = unDossierXML.ChildNodes[0].InnerText; string prenom = unDossierXML.ChildNodes[1].InnerText; DateTime dateNaissance = TraitementXML.XmlToDateTime((XmlElement)unDossierXML.ChildNodes[2]); if (unDossierXML.GetElementsByTagName("dossierprestations").Count == 0) { // pas de prestations return(new Dossier(nom, prenom, dateNaissance)); } else { // au moins une prestation XmlNodeList lesPrestations = (unDossierXML.GetElementsByTagName("dossierprestations")[0]).ChildNodes; List <Prestation> lesPrestationsDuDossier = new List <Prestation>(); foreach (XmlElement unePrestation in lesPrestations) { int idPrestation = Convert.ToInt16(unePrestation.GetAttribute("idprestation")); XmlElement unePrestationXML = TraitementXML.CherchePrestation(idPrestation); lesPrestationsDuDossier.Add(TraitementXML.XmlToPrestation(unePrestationXML)); } return(new Dossier(nom, prenom, dateNaissance, lesPrestationsDuDossier)); } }
/// <summary> /// à partir de la collection de noeuds XML lesIntervenants, /// construit une collection d'objets de la classe Intervenant. /// </summary> /// <returns>une collection d'objets de la classe Intervenant</returns> public static List <Intervenant> XmlToIntervenants() { List <Intervenant> lesIntervenants = new List <Intervenant>(); foreach (XmlElement unIntervenantXml in TraitementXML.LesIntervenants) { lesIntervenants.Add(TraitementXML.XmlToIntervenant(unIntervenantXml)); } return(lesIntervenants); }
/// <summary> /// construit, à partir d'un noeud XML un objet de la classe Prestation. /// Avec son Intervenant /// </summary> /// <param name="unePrestationXML">Elément XML de la prestation à créer</param> /// <returns>Un objet de la classe Prestation</returns> private static Prestation XmlToPrestation(XmlElement unePrestationXML) { string libellePrestation = unePrestationXML.ChildNodes[0].InnerText; DateTime datePrestation = TraitementXML.XmlToDateTime((XmlElement)unePrestationXML.ChildNodes[1]); int idIntervenant = Convert.ToInt16(unePrestationXML.GetAttribute("idintervenant")); XmlElement unIntervenantXML = TraitementXML.ChercheIntervenant(idIntervenant); Intervenant unIntervenant = TraitementXML.XmlToIntervenant(unIntervenantXML); return(new Prestation(libellePrestation, datePrestation, unIntervenant)); }
/// <summary> /// à partir de la collection de noeuds XML lesDossiers, /// construit une collection d'objets de la classe Dossier. /// Pour chaque dossier, ses prestations et les intervenants des prestations /// </summary> /// <returns>une collection d'objets de la classe Dossier</returns> public static List <Dossier> XmlToDossiers() { List <Dossier> lesDossiers = new List <Dossier>(); foreach (XmlElement unDossierXml in TraitementXML.LesDossiers) { lesDossiers.Add(TraitementXML.XmlToDossier(unDossierXml)); } return(lesDossiers); }
/// <summary> /// construit, à partir d'un noeud XML un objet de la classe Intervenant /// Avec ses prestations /// </summary> /// <param name="unIntervenantXml">Elément XML de l'intervenant à créer</param> /// <returns>Un objet de la classe Intervenant</returns> public static Intervenant XmlToIntervenantComplet(XmlElement unIntervenantXml) { Intervenant unIntervenant = XmlToIntervenant(unIntervenantXml); int idIntervenant = Convert.ToInt16(unIntervenantXml.GetAttribute("idintervenant")); foreach (XmlElement unePrestationXml in LesPrestations) { unIntervenant.ajoutePrestation(TraitementXML.XmlToPrestation(unePrestationXml)); } return(unIntervenant); }