private static void ExportXml(XmlWriter xw, HeaderDetail_v1<Handeco_Header, Handeco_Detail> headerDetail, bool detail) { IEnumerator<string> detailGroupes = null; IEnumerator<string> headerGroupes = null; IEnumerator<Activity> detailActivités = null; IEnumerator<string> headerActivités = null; IEnumerator<Contact> detailContacts = null; IEnumerator<string> detailUnknowInfos = null; if (detail) { detailGroupes = ((IEnumerable<string>)headerDetail.Detail.Groupes).GetEnumerator(); headerGroupes = ((IEnumerable<string>)headerDetail.Header.Groupes).GetEnumerator(); detailActivités = ((IEnumerable<Activity>)headerDetail.Detail.Activités).GetEnumerator(); headerActivités = ((IEnumerable<string>)headerDetail.Header.Activités).GetEnumerator(); detailContacts = ((IEnumerable<Contact>)headerDetail.Detail.Contacts).GetEnumerator(); detailUnknowInfos = ((IEnumerable<string>)headerDetail.Detail.UnknowInfos).GetEnumerator(); } xw.WriteStartElement("Company"); xw.zWriteElementText("société", headerDetail.Detail.RaisonSociale); xw.zWriteElementText("société2", headerDetail.Header.Name); if (!detail) { xw.zWriteElementText("groupe", (from groupe in headerDetail.Detail.Groupes select groupe).FirstOrDefault()); xw.zWriteElementText("groupe2", (from groupe in headerDetail.Header.Groupes select groupe).FirstOrDefault()); } if (detail) { xw.zWriteElementText("groupe", detailGroupes.MoveNext() ? detailGroupes.Current : null); xw.zWriteElementText("groupe2", headerGroupes.MoveNext() ? headerGroupes.Current : null); Activity activity = null; if (detailActivités.MoveNext()) activity = detailActivités.Current; xw.zWriteElementText("activité", activity != null ? activity.Type : null); xw.zWriteElementText("activité2", headerActivités.MoveNext() ? headerActivités.Current : null); xw.zWriteElementText("activité_description", activity != null ? activity.Description : null); xw.zWriteElementText("moyens_activité", activity != null ? activity.MoyensTechniquesDisponibles : null); xw.zWriteElementText("effectif_activité", activity != null ? activity.EffectifTotalMobilisable : null); xw.zWriteElementText("modalités_activité", activity != null ? activity.ModalitésPratiques : null); xw.zWriteElementText("couverture_activité", activity != null ? activity.CouvertureGéographique : null); Contact contact = null; if (detailContacts.MoveNext()) contact = detailContacts.Current; xw.zWriteElementText("contact", contact != null ? contact.Description : null); xw.zWriteElementText("nom_contact", contact != null ? contact.Nom : null); xw.zWriteElementText("fonction_contact", contact != null ? contact.Fonction : null); xw.zWriteElementText("tel_contact", contact != null ? contact.Tel : null); xw.zWriteElementText("mobile_contact", contact != null ? contact.Mobile : null); xw.zWriteElementText("email_contact", contact != null ? contact.Email : null); xw.zWriteElementText("unknow", detailUnknowInfos.MoveNext() ? detailUnknowInfos.Current : null); } xw.zWriteElementText("emplacement", headerDetail.Detail.Localisation); xw.zWriteElementText("code_postal", headerDetail.Header.PostalCode); xw.zWriteElementText("dernière_miseàjour", headerDetail.Detail.DernièreMiseàjour != null ? ((DateTime)headerDetail.Detail.DernièreMiseàjour).ToString("yyyy-MM-dd") : null); xw.zWriteElementText("création", headerDetail.Detail.DateCréation); xw.zWriteElementText("statut", headerDetail.Detail.StatutJuridique); xw.zWriteElementText("type", headerDetail.Detail.TypeStructure); xw.zWriteElementText("siteWeb", headerDetail.Detail.SiteWeb); xw.zWriteElementText("siret", headerDetail.Detail.Siret); xw.zWriteElementText("normes", headerDetail.Detail.Normes); xw.zWriteElementText("chiffre_affaires", headerDetail.Detail.ChiffreAffairesAnnuel); xw.zWriteElementText("effectif_total", headerDetail.Detail.EffectifTotal); xw.zWriteElementText("effectif_production", headerDetail.Detail.EffectifProduction); xw.zWriteElementText("effectif_encadrement", headerDetail.Detail.EffectifEncadrement); xw.zWriteElementText("nombre_travailleurs_handicapés", headerDetail.Detail.NombreTravailleursHandicapés); xw.zWriteElementText("nombre_handicapé_accompagné", headerDetail.Detail.NombreHandicapéAccompagné); xw.zWriteElementText("appartenance_groupe", headerDetail.Detail.AppartenanceGroupe); xw.zWriteElementText("présentation_groupe", headerDetail.Detail.PrésentationGroupe); xw.zWriteElementText("siteweb_groupe", headerDetail.Detail.SiteWebGroupe); xw.zWriteElementText("adhésion_réseaux", headerDetail.Detail.AdhésionRéseauxHandicap); xw.zWriteElementText("cotraitance", headerDetail.Detail.Cotraitance); xw.zWriteElementText("adresse_principale", headerDetail.Detail.AdressePrincipale); xw.zWriteElementText("adresse_siège", headerDetail.Detail.AdresseSiège); xw.zWriteElementText("adresse_antennes", headerDetail.Detail.AdresseAntennes); xw.zWriteElementText("email", headerDetail.Detail.Email); xw.zWriteElementText("tel", headerDetail.Detail.Tel); xw.zWriteElementText("fax", headerDetail.Detail.Fax); xw.zWriteElementText("code_ape", headerDetail.Detail.CodeApe); xw.zWriteElementText("numero_finess", headerDetail.Detail.NumeroFiness); xw.zWriteElementText("logo", headerDetail.Detail.Logo); xw.zWriteElementText("url", headerDetail.Detail.SourceUrl); xw.WriteEndElement(); while (detail) { bool detailGroupe = detailGroupes.MoveNext(); bool headerGroupe = headerGroupes.MoveNext(); bool headerActivity = headerActivités.MoveNext(); bool detailActivity = detailActivités.MoveNext(); bool detailContact = detailContacts.MoveNext(); bool detailUnknowInfo = detailUnknowInfos.MoveNext(); if (!detailGroupe && !headerGroupe && !headerActivity && !detailActivity && !detailContact && !detailUnknowInfo) break; xw.WriteStartElement("Company"); if (detailUnknowInfo) xw.zWriteElementText("Unknow", detailUnknowInfos.Current); if (detailGroupe) xw.zWriteElementText("groupe", detailGroupes.Current); if (headerGroupe) xw.zWriteElementText("groupe2", headerGroupes.Current); Activity activity = null; if (detailActivity) activity = detailActivités.Current; if (activity != null) xw.zWriteElementText("activité", activity.Type); if (headerActivity) xw.zWriteElementText("activité2", headerActivités.Current); if (activity != null) { xw.zWriteElementText("activité_description", activity.Description); xw.zWriteElementText("moyens_activité", activity.MoyensTechniquesDisponibles); xw.zWriteElementText("effectif_activité", activity.EffectifTotalMobilisable); xw.zWriteElementText("modalités_activité", activity.ModalitésPratiques); xw.zWriteElementText("couverture_activité", activity.CouvertureGéographique); } if (detailContact) { Contact contact = detailContacts.Current; xw.zWriteElementText("contact", contact.Description); xw.zWriteElementText("nom_contact", contact.Nom); xw.zWriteElementText("fonction_contact", contact.Fonction); xw.zWriteElementText("tel_contact", contact.Tel); xw.zWriteElementText("mobile_contact", contact.Mobile); xw.zWriteElementText("email_contact", contact.Email); } xw.WriteEndElement(); } }
public static void ExportXml_Company(XmlWriter xw, Unea_Company company, bool detail, Unea_Company_DuplicateExists duplicate = null) { IEnumerator<string> headerActivities = null; IEnumerator<string> detail1Activities = null; IEnumerator<string> detail2Activities = null; IEnumerator<string> detail1Sectors = null; IEnumerator<string> detail2Sectors = null; IEnumerator<Unea_Document> detail1DownloadDocuments = null; IEnumerator<Unea_Document> detail2DownloadDocuments = null; IEnumerator<string> detail1Photos = null; IEnumerator<string> detail2Photos = null; IEnumerator<string> headerUnknowInfos = null; IEnumerator<string> detail1UnknowInfos = null; IEnumerator<string> detail2UnknowInfos = null; if (detail) { headerActivities = ((IEnumerable<string>)company.headerActivities.Keys).GetEnumerator(); detail1Activities = ((IEnumerable<string>)company.detail1Activities.Keys).GetEnumerator(); detail2Activities = ((IEnumerable<string>)company.detail2Activities.Keys).GetEnumerator(); detail1Sectors = ((IEnumerable<string>)company.detail1Sectors.Keys).GetEnumerator(); detail2Sectors = ((IEnumerable<string>)company.detail2Sectors.Keys).GetEnumerator(); detail1DownloadDocuments = ((IEnumerable<Unea_Document>)company.detail1DownloadDocuments.Values).GetEnumerator(); detail2DownloadDocuments = ((IEnumerable<Unea_Document>)company.detail2DownloadDocuments.Values).GetEnumerator(); detail1Photos = ((IEnumerable<string>)company.detail1Photos.Keys).GetEnumerator(); detail2Photos = ((IEnumerable<string>)company.detail2Photos.Keys).GetEnumerator(); headerUnknowInfos = ((IEnumerable<string>)company.headerUnknowInfos).GetEnumerator(); detail1UnknowInfos = ((IEnumerable<string>)company.detail1UnknowInfos).GetEnumerator(); detail2UnknowInfos = ((IEnumerable<string>)company.detail2UnknowInfos).GetEnumerator(); } xw.WriteStartElement("Company"); xw.zWriteElementText("société", company.headerName); xw.zWriteElementText("société2", company.detail1Name); xw.zWriteElementText("société3", company.detail2Name); xw.zWriteElementText("emplacement", company.headerLocation); xw.zWriteElementText("emplacement2", company.detail1Location); if (detail) { string text1, text2; text1 = null; if (headerActivities.MoveNext()) text1 = headerActivities.Current; xw.zWriteElementText("activité", text1); text1 = null; if (detail1Activities.MoveNext()) text1 = detail1Activities.Current; xw.zWriteElementText("activité2", text1); text1 = null; if (detail2Activities.MoveNext()) text1 = detail2Activities.Current; xw.zWriteElementText("activité3", text1); text1 = null; if (detail1Sectors.MoveNext()) text1 = detail1Sectors.Current; xw.zWriteElementText("filière", text1); text1 = null; if (detail2Sectors.MoveNext()) text1 = detail2Sectors.Current; xw.zWriteElementText("filière2", text1); text1 = null; text2 = null; if (detail1DownloadDocuments.MoveNext()) { text1 = detail1DownloadDocuments.Current.name; text2 = detail1DownloadDocuments.Current.url; } xw.zWriteElementText("document", text1); xw.zWriteElementText("document_url", text2); text1 = null; text2 = null; if (detail2DownloadDocuments.MoveNext()) { text1 = detail2DownloadDocuments.Current.name; text2 = detail2DownloadDocuments.Current.url; } xw.zWriteElementText("document2", text1); xw.zWriteElementText("document2_url", text2); text1 = null; if (detail1Photos.MoveNext()) text1 = detail1Photos.Current; xw.zWriteElementText("image", text1); text1 = null; if (detail2Photos.MoveNext()) text1 = detail2Photos.Current; xw.zWriteElementText("image2", text1); text1 = null; if (headerUnknowInfos.MoveNext()) text1 = headerUnknowInfos.Current; xw.zWriteElementText("inconnu", text1); text1 = null; if (detail1UnknowInfos.MoveNext()) text1 = detail1UnknowInfos.Current; xw.zWriteElementText("inconnu2", text1); text1 = null; if (detail2UnknowInfos.MoveNext()) text1 = detail2UnknowInfos.Current; xw.zWriteElementText("inconnu3", text1); } xw.zWriteElementText("adresse", company.detail1Address); xw.zWriteElementText("adresse2", company.detail2Address); xw.zWriteElementText("tel", company.headerPhone); xw.zWriteElementText("tel2", company.detail1Phone); xw.zWriteElementText("tel3", company.detail2Phone); xw.zWriteElementText("fax", company.headerFax); xw.zWriteElementText("fax2", company.detail1Fax); xw.zWriteElementText("fax3", company.detail2Fax); xw.zWriteElementText("email", company.headerEmail); xw.zWriteElementText("email2", company.detail1Email); xw.zWriteElementText("email3", company.detail2Email); xw.zWriteElementText("site", company.detail1WebSite); xw.zWriteElementText("site2", company.detail2WebSite); xw.zWriteElementText("présentation", company.detail1Presentation); xw.zWriteElementText("présentation2", company.detail2Presentation); xw.zWriteElementText("client", company.detail1Clients); xw.zWriteElementText("client2", company.detail2Clients); xw.zWriteElementText("dirigeant", company.detail1Leader); xw.zWriteElementText("dirigeant2", company.detail2Leader); xw.zWriteElementText("nb_salarié", company.detail1EmployeNumber.ToString()); xw.zWriteElementText("nb_salarié2", company.detail2EmployeNumber.ToString()); xw.zWriteElementText("chiffre_affaire", company.detail1LastYearRevenue); xw.zWriteElementText("chiffre_affaire2", company.detail2LastYearRevenue); xw.zWriteElementText("certification", company.detail1Certification); xw.zWriteElementText("certification2", company.detail2Certification); xw.zWriteElementText("siret", company.detail1Siret); xw.zWriteElementText("siret2", company.detail2Siret); //xw.zWriteElementText("load_date", string.Format("{0:dd/MM/yyyy HH:mm}", company.loadFromWebDate)); //xw.zWriteElementText("url_entête", company.urlHeader); xw.zWriteElementText("url_detail1", company.urlDetail1); xw.zWriteElementText("url_detail2", company.urlDetail2); xw.WriteEndElement(); while (detail) { bool headerActivity = headerActivities.MoveNext(); bool detail1Activity = detail1Activities.MoveNext(); bool detail2Activity = detail2Activities.MoveNext(); bool detail1Sector = detail1Sectors.MoveNext(); bool detail2Sector = detail2Sectors.MoveNext(); bool detail1DownloadDocument = detail1DownloadDocuments.MoveNext(); bool detail2DownloadDocument = detail2DownloadDocuments.MoveNext(); bool detail1Photo = detail1Photos.MoveNext(); bool detail2Photo = detail2Photos.MoveNext(); bool headerUnknowInfo = headerUnknowInfos.MoveNext(); bool detail1UnknowInfo = detail1UnknowInfos.MoveNext(); bool detail2UnknowInfo = detail2UnknowInfos.MoveNext(); if (!headerActivity && !detail1Activity && !detail2Activity && !detail1Sector && !detail2Sector && !detail1DownloadDocument && !detail2DownloadDocument && !headerUnknowInfo && !detail1UnknowInfo && !detail2UnknowInfo) break; xw.WriteStartElement("Company"); if (headerActivity) xw.zWriteElementText("activité", headerActivities.Current); if (detail1Activity) xw.zWriteElementText("activité2", detail1Activities.Current); if (detail2Activity) xw.zWriteElementText("activité3", detail2Activities.Current); if (detail1Sector) xw.zWriteElementText("filière", detail1Sectors.Current); if (detail2Sector) xw.zWriteElementText("filière2", detail2Sectors.Current); if (detail1DownloadDocument) { xw.zWriteElementText("document", detail1DownloadDocuments.Current.name); xw.zWriteElementText("document_url", detail1DownloadDocuments.Current.url); } if (detail2DownloadDocument) { xw.zWriteElementText("document2", detail2DownloadDocuments.Current.name); xw.zWriteElementText("document2_url", detail2DownloadDocuments.Current.url); } if (detail1Photo) xw.zWriteElementText("image", detail1Photos.Current); if (detail2Photo) xw.zWriteElementText("image2", detail2Photos.Current); if (headerUnknowInfo) xw.zWriteElementText("inconnu", headerUnknowInfos.Current); if (detail1UnknowInfo) xw.zWriteElementText("inconnu2", detail1UnknowInfos.Current); if (detail2UnknowInfo) xw.zWriteElementText("inconnu3", detail2UnknowInfos.Current); xw.WriteEndElement(); } }