public static void SaveCustomerProspectDataToReportOptionValues(Guid idReport, Data.Model.CustomerProspect customer) { UpsilabEntities db = new UpsilabEntities(); OptionAttribute optionAttribute = null; Data.Model.Option option = null; try { //Insert update data to optionvalue from customer data //Liste des options à inserer //List of existing option value List<ReportOptionValue> lstOptionValues = (from rov in db.ReportOptionValue.Include("Option").Include("ReportOptionAttributeValue") where rov.idReport == idReport select rov).ToList(); string action = string.Empty; if (customer.IsCorporation.HasValue && !customer.IsCorporation.Value) { #region A- PP #region IDENTITE #region Civilité if (!string.IsNullOrEmpty(customer.Title)) { option = null; if (customer.Title.CompareTo("Monsieur") == 0) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_1220"); } else if (customer.Title.CompareTo("Madame") == 0) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_1221"); } else if (customer.Title.CompareTo("Mademoiselle") == 0) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_1222"); } // dans certains cas de l'import, on trouve une civilité = "Madame et Monsieur" if (option != null) { SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } } #endregion //UserName optionAttribute = OptionBL.GetOptionAttributeById(142); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserName, "txt", lstOptionValues, db); //UserFirstName optionAttribute = OptionBL.GetOptionAttributeById(143); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserFirstName, "txt", lstOptionValues, db); //Nom de jeune fille optionAttribute = OptionBL.GetOptionAttributeById(144); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.MaidenName, "txt", lstOptionValues, db); //Date de naissance optionAttribute = OptionBL.GetOptionAttributeById(145); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, (customer.DateOfBirth.HasValue) ? customer.DateOfBirth.Value.ToString("dd/MM/yyyy") : "", "txt", lstOptionValues, db); //Lieu de naissance optionAttribute = OptionBL.GetOptionAttributeById(147); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.PlaceOfBirth, "txt", lstOptionValues, db); //Tel privé optionAttribute = OptionBL.GetOptionAttributeById(148); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.PrivatePhone, "txt", lstOptionValues, db); //Fax optionAttribute = OptionBL.GetOptionAttributeById(149); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Fax, "txt", lstOptionValues, db); //Tel. prof optionAttribute = OptionBL.GetOptionAttributeById(150); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.ProfessionalPhone, "txt", lstOptionValues, db); //Tel Portable optionAttribute = OptionBL.GetOptionAttributeById(151); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserMobilePhone, "txt", lstOptionValues, db); //Email optionAttribute = OptionBL.GetOptionAttributeById(152); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserEmail, "txt", lstOptionValues, db); //Addresse courier optionAttribute = OptionBL.GetOptionAttributeById(153); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Adress, "txt", lstOptionValues, db); //Code postal optionAttribute = OptionBL.GetOptionAttributeById(539); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.ZipCode, "txt", lstOptionValues, db); //Ville optionAttribute = OptionBL.GetOptionAttributeById(540); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.City, "txt", lstOptionValues, db); //Adresse fiscale optionAttribute = OptionBL.GetOptionAttributeById(154); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.FiscalAddrress, "txt", lstOptionValues, db); //Code postal fiscal optionAttribute = OptionBL.GetOptionAttributeById(541); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.FiscalZipCode, "txt", lstOptionValues, db); //Ville fiscale optionAttribute = OptionBL.GetOptionAttributeById(542); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.FiscalCity, "txt", lstOptionValues, db); //Etes-vous ? #region Identité "Etes vous majeur" GESTION DES RADIOBUTTON if (customer.LegalCapacity != null) { if (customer.LegalCapacity.CompareTo("Mineur non émancipé") == 0) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_022_Mineur"); } else if (customer.LegalCapacity.CompareTo("Majeur capable") == 0) { option = OptionBL.GetOptionById(218); } else if (customer.LegalCapacity.CompareTo("Majeur sous tutelle") == 0) { option = OptionBL.GetOptionById(219); } else if (customer.LegalCapacity.CompareTo("Majeur sous curatelle") == 0) { option = OptionBL.GetOptionById(220); } else if (customer.LegalCapacity.CompareTo("Majeur sous sauvegarde de justice") == 0) { option = OptionBL.GetOptionById(221); } else if (customer.LegalCapacity.CompareTo("Mineur émancipé") == 0) { option = OptionBL.GetOptionById(1149); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } // Representant légal optionAttribute = OptionBL.GetOptionAttributeById(739); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.LegalRepresentative, "txt", lstOptionValues, db); #endregion //Nationalite optionAttribute = OptionBL.GetOptionAttributeById(155); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Nationality, "txt", lstOptionValues, db); //Autre Nationalite optionAttribute = OptionBL.GetOptionAttributeById(156); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.NationalityIfDouble, "txt", lstOptionValues, db); //Resident #region IsResident if (customer.IsResident != null) { if (customer.IsResident.Value) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_026"); optionAttribute = OptionBL.GetOptionAttributeById(157); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, "France", "txt", lstOptionValues, db); //France par défaut si résident customer.Country = "France"; } else { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_027"); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //Pays de residence optionAttribute = OptionBL.GetOptionAttributeById(157); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Country, "txt", lstOptionValues, db); //Gafi #region GAFI if (customer.Gafi != null) { if (customer.Gafi.Value) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_030"); } else { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_031"); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //Offshore #region OFFSHORE if (customer.OffShore != null) { if (customer.OffShore.Value) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_033"); } else { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_034"); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //PPE #region PPE if (customer.Ppe != null) { if (customer.Ppe.Value) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_100"); } else { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_101"); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //Risques accrus #region Risques accrus if (customer.RisquesAccrus != null) { if (customer.RisquesAccrus.Value) { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_105"); } else { option = OptionBL.GetOptionByNameKey("ClientPP_Titulaire_106"); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion #region ORIGINE DE LA RELATION if (customer.RelationshipBeginingDate.HasValue) { //Option client depuis le option = OptionBL.GetOptionById(233); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //Champ date optionAttribute = OptionBL.GetOptionAttributeById(158); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.RelationshipBeginingDate.Value.ToString("dd/MM/yyyy"), "txt", lstOptionValues, db); } else if (!string.IsNullOrEmpty(customer.RelationshipType)) { /*new*/ if (customer.RelationshipType.Equals("contactparrecommandation")) { //Option contact par recommandation option = OptionBL.GetOptionById(234); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else if (customer.RelationshipType.Equals("clientdepuis")) { //Option client depuis option = OptionBL.GetOptionById(233); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { //Option Autre option = OptionBL.GetOptionById(240); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } /*end new*/ } #endregion #region VIE PROFESSIONNELLE if (!string.IsNullOrEmpty(customer.Profession)) { //En activité ou retraité option = OptionBL.GetOptionById(258); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); if (customer.Profession.ToLower().Replace('é', 'e').Contains("retraite")) { //Retraité depuis le option = OptionBL.GetOptionById(263); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //?? //Mettre le contenu du champ profession dans Ancienne profession optionAttribute = OptionBL.GetOptionAttributeById(167); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Profession, "txt", lstOptionValues, db); } else if (customer.Profession.ToLower().Replace('é', 'e').Contains("medecin (salarie)")) { //Activité(s) salariée(s) option = OptionBL.GetOptionById(261); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //?? //Métier optionAttribute = OptionBL.GetOptionAttributeById(160); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Profession, "txt", lstOptionValues, db); //Secteur d'activité optionAttribute = OptionBL.GetOptionAttributeById(161); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, "Santé et action sociale", "txt", lstOptionValues, db); //valeur par defaut dropdownlist } else if (customer.Profession.ToLower().Replace('é', 'e').Contains("cadre superieur") || customer.Profession.ToLower().Contains("cadre d'entreprise")) { //Activité(s) salariée(s) option = OptionBL.GetOptionById(261); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //?? //Métier optionAttribute = OptionBL.GetOptionAttributeById(160); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Profession, "txt", lstOptionValues, db); } else if (customer.Profession.ToLower().Contains("notaire") || customer.Profession.ToLower().Replace('é', 'e').Contains("chef d'entreprise (de 1 à 9 salaries)") || customer.Profession.ToLower().Replace('é', 'e').Contains("gerant majoritaire") || customer.Profession.ToLower().Replace('é', 'e').Contains("médecin (prof. liberale)") || customer.Profession.ToLower().Replace('é', 'e').Contains("avocat, avoue (prof. liberale)") || customer.Profession.ToLower().Replace('é', 'e').Contains("expert comptable (prof. liberale)") || customer.Profession.ToLower().Replace('é', 'e').Contains("veterinaire") || customer.Profession.ToLower().Contains("agriculteur sur moyenne exploitation")) { //Activité(s) autre que salariée(s) option = OptionBL.GetOptionById(262); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //?? //Métier optionAttribute = OptionBL.GetOptionAttributeById(163); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Profession, "txt", lstOptionValues, db); } else if (customer.Profession.ToLower().Replace('é', 'e').Contains("etudiant") || customer.Profession.ToLower().Replace('é', 'e').Contains("lyceen")) // Etudiant / Lycéen" { option = OptionBL.GetOptionById(1144); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #region "redmine 4577" else if (customer.Profession.ToLower().Contains("sans profession")) { option = OptionBL.GetOptionById(260); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else if (customer.Profession.ToLower().Replace('é', 'e').Contains("medecin generaliste")) { // Activité(s) autre que salariée option = OptionBL.GetOptionById(262); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //Métier optionAttribute = OptionBL.GetOptionAttributeById(163); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Profession, "txt", lstOptionValues, db); //Secteur d'activité optionAttribute = OptionBL.GetOptionAttributeById(164); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, "Santé et action sociale", "txt", lstOptionValues, db); //valeur par defaut dropdownlist } #endregion else { // Activité(s) salarié(s) option = OptionBL.GetOptionById(261); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //Métier optionAttribute = OptionBL.GetOptionAttributeById(160); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Profession, "txt", lstOptionValues, db); } } #endregion #region SITUATION FAMILIALE if (customer.MaritalStatus != null) { if (customer.MaritalStatus.ToLower().Contains("non") || customer.MaritalStatus.ToLower().Contains("mari")) //Marié(e) { option = OptionBL.GetOptionById(278); } else if (customer.MaritalStatus.ToLower().Contains("pacs")) { option = OptionBL.GetOptionById(279); } else if (customer.MaritalStatus.ToLower().Contains("célibataire")) { option = OptionBL.GetOptionById(280); } else if (customer.MaritalStatus.ToLower().Contains("veu")) //Veuf(ve) { option = OptionBL.GetOptionById(281); } else if (customer.MaritalStatus.ToLower().Contains("divorc")) //Divorcé(r) { option = OptionBL.GetOptionById(282); } else if (customer.MaritalStatus.ToLower().Contains("séparé")) //Séparé(e) { option = OptionBL.GetOptionById(283); } else if (customer.MaritalStatus.ToLower().Contains("concubin")) { option = OptionBL.GetOptionById(284); } else if (customer.MaritalStatus.ToLower().Contains("cohabitant")) { option = OptionBL.GetOptionById(1252); } else if (customer.MaritalStatus.ToLower().Contains("séparé (e) de corps et de biens")) { option = OptionBL.GetOptionById(1253); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } //Date de l'evenement #region Date de l'évènement if (customer.WeddingDate.HasValue && customer.WeddingDate.Value != null) { optionAttribute = OptionBL.GetOptionAttributeById(178); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, (customer.WeddingDate.HasValue) ? customer.WeddingDate.Value.ToString("dd/MM/yyyy") : "", "txt", lstOptionValues, db); } #endregion #endregion #region REGIME MATRIMONIAL (Seulement pour PP) if (customer.MarriageSettlement != null) { if (customer.MarriageSettlement.ToLower().Replace('é', 'e').Contains("communaute legale")) { option = OptionBL.GetOptionById(286); } else if (customer.MarriageSettlement.ToLower().Replace('é', 'e').Contains("separation de biens")) { option = OptionBL.GetOptionById(287); } else if (customer.MarriageSettlement.ToLower().Replace('ê', 'e').Contains("participation aux acquets")) { option = OptionBL.GetOptionById(288); } else if (customer.MarriageSettlement.ToLower().Replace('é', 'e').Contains("communaute universelle") || customer.MarriageSettlement.ToLower().Replace('é', 'e').Contains("regime de communaute universelle")) { option = OptionBL.GetOptionById(289); } else if (customer.MarriageSettlement.ToLower().Replace('é', 'e').Replace('ê', 'e').Replace('è', 'e').Contains("communaute reduite aux acquets (depuis 1966)") || customer.MarriageSettlement.ToLower().Replace('é', 'e').Replace('ê', 'e').Contains("communaute reduite aux acquets (regime legal apres 1966)") || customer.MarriageSettlement.ToLower().Replace('é', 'e').Replace('ê', 'e').Contains("Communaute réduite aux acquets")) { option = OptionBL.GetOptionById(1148); } else if (customer.MarriageSettlement.ToLower().Replace('é', 'e').Contains("regime legal avant 1er fevrier 1966") || customer.MarriageSettlement.ToLower().Replace('é', 'e').Contains("communaute meubles et acquets (régime legal avant 1966)")) { option = OptionBL.GetOptionById(1158); } else if (customer.MarriageSettlement.ToLower().Replace('é', 'e').Replace('ê', 'e').Replace('è', 'e').Contains("separation de biens avec societe d’acquets")) { option = OptionBL.GetOptionById(1159); } else { option = OptionBL.GetOptionById(1160); optionAttribute = OptionBL.GetOptionAttributeById(179); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.MarriageSettlement, "txt", lstOptionValues, db); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion #region LIBERALITES optionAttribute = OptionBL.GetOptionAttributeById(721); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Liberality, "txt", lstOptionValues, db); #endregion #region CONJOINT bool activate = true; if (activate) { //Est ce que le customer a un lien ? : copier l'info de son conjoint CustomerProspectRelation customerRelation = customer.CustomerProspectRelation.Where(cr => cr.TypeRelation == CustomerProspect.CustomerProspectBL.TypeRelation.Conjoint.ToString()).FirstOrDefault(); if (customerRelation != null && customerRelation.CustomerProspect1 != null) { #region Identity //Civilité #region Title if (customerRelation.CustomerProspect1.Title != null && !string.IsNullOrEmpty(customerRelation.CustomerProspect1.Title)) { if (customerRelation.CustomerProspect1.Title.CompareTo("Monsieur") == 0) { option = OptionBL.GetOptionById(1224); } else if (customerRelation.CustomerProspect1.Title.CompareTo("Madame") == 0) { option = OptionBL.GetOptionById(1225); } else if (customerRelation.CustomerProspect1.Title.CompareTo("Mademoiselle") == 0) { option = OptionBL.GetOptionById(1226); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //UserName optionAttribute = OptionBL.GetOptionAttributeById(180); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserName, "txt", lstOptionValues, db); //Nom de jeune fille optionAttribute = OptionBL.GetOptionAttributeById(181); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.MaidenName, "txt", lstOptionValues, db); //Prenom optionAttribute = OptionBL.GetOptionAttributeById(182); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserFirstName, "txt", lstOptionValues, db); //DateOfBirth optionAttribute = OptionBL.GetOptionAttributeById(183); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, (customerRelation.CustomerProspect1.DateOfBirth.HasValue) ? customerRelation.CustomerProspect1.DateOfBirth.Value.ToString("dd/MM/yyyy") : null, "txt", lstOptionValues, db); //PlaceOfBirth optionAttribute = OptionBL.GetOptionAttributeById(641); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.PlaceOfBirth, "txt", lstOptionValues, db); //Votre conjoint est-il #region Legal capacity if (customerRelation.CustomerProspect1.LegalCapacity != null) { if (customerRelation.CustomerProspect1.LegalCapacity.CompareTo("Majeur capable") == 0) { option = OptionBL.GetOptionById(1152); } else if (customerRelation.CustomerProspect1.LegalCapacity.CompareTo("Majeur sous tutelle") == 0) { option = OptionBL.GetOptionById(1153); } else if (customerRelation.CustomerProspect1.LegalCapacity.CompareTo("Majeur sous curatelle") == 0) { option = OptionBL.GetOptionById(1154); } else if (customerRelation.CustomerProspect1.LegalCapacity.CompareTo("Majeur sous sauvegarde de justice") == 0) { option = OptionBL.GetOptionById(1155); } else if (customerRelation.CustomerProspect1.LegalCapacity.CompareTo("Mineur non émancipé") == 0) { option = OptionBL.GetOptionById(1156); } else if (customerRelation.CustomerProspect1.LegalCapacity.CompareTo("Mineur émancipé") == 0) { option = OptionBL.GetOptionById(1157); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //Private phone optionAttribute = OptionBL.GetOptionAttributeById(184); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.PrivatePhone, "txt", lstOptionValues, db); //Mobile phone optionAttribute = OptionBL.GetOptionAttributeById(185); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserMobilePhone, "txt", lstOptionValues, db); //Email optionAttribute = OptionBL.GetOptionAttributeById(186); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserEmail, "txt", lstOptionValues, db); //Address optionAttribute = OptionBL.GetOptionAttributeById(187); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Adress, "txt", lstOptionValues, db); //Profession optionAttribute = OptionBL.GetOptionAttributeById(188); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Profession, "txt", lstOptionValues, db); //Statut social optionAttribute = OptionBL.GetOptionAttributeById(189); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, string.Empty, "txt", lstOptionValues, db); //TODO : field ? //Nationality optionAttribute = OptionBL.GetOptionAttributeById(190); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Nationality, "txt", lstOptionValues, db); //Nationality if double optionAttribute = OptionBL.GetOptionAttributeById(642); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.NationalityIfDouble, "txt", lstOptionValues, db); bool bProdServer = (Upsilab.Business.Utility.ConfigurationManager.ServerType == Upsilab.Business.Utility.ConfigurationManager.EnumServerType.PROD.ToString()) ? true : false; //Resident #region IsResident if (customerRelation.CustomerProspect1.IsResident != null) { if (customerRelation.CustomerProspect1.IsResident.Value) { if (bProdServer) option = OptionBL.GetOptionById(1112); else option = OptionBL.GetOptionById(1111); optionAttribute = OptionBL.GetOptionAttributeById(640); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, "France", "txt", lstOptionValues, db); //France par défaut si résident customerRelation.CustomerProspect1.Country = "France"; } else { if (bProdServer) option = OptionBL.GetOptionById(1113); else option = OptionBL.GetOptionById(1112); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //Pays de residence optionAttribute = OptionBL.GetOptionAttributeById(640); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Country, "txt", lstOptionValues, db); //France par défaut si résident } #endregion //Gafi #region GAFI if (customerRelation.CustomerProspect1.Gafi != null) { if (customerRelation.CustomerProspect1.Gafi.Value) { if (bProdServer) option = OptionBL.GetOptionById(1116); else option = OptionBL.GetOptionById(1115); } else { if (bProdServer) option = OptionBL.GetOptionById(1117); else option = OptionBL.GetOptionById(1116); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //OFFSHORE #region OFFSHORE if (customerRelation.CustomerProspect1.OffShore != null) { if (customerRelation.CustomerProspect1.OffShore.Value) { if (bProdServer) option = OptionBL.GetOptionById(1119); else option = OptionBL.GetOptionById(1118); } else { if (bProdServer) option = OptionBL.GetOptionById(1120); else option = OptionBL.GetOptionById(1119); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //PPE #region PPe if (customerRelation.CustomerProspect1.Ppe != null) { if (customerRelation.CustomerProspect1.Ppe.Value) { if (bProdServer) option = OptionBL.GetOptionById(1123); else option = OptionBL.GetOptionById(1122); } else { if (bProdServer) option = OptionBL.GetOptionById(1124); else option = OptionBL.GetOptionById(1123); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //Risques accrus #region Risques accrus if (customerRelation.CustomerProspect1.RisquesAccrus != null) { if (customerRelation.CustomerProspect1.RisquesAccrus.Value) { if (bProdServer) option = OptionBL.GetOptionById(1126); else option = OptionBL.GetOptionById(1125); } else { if (bProdServer) option = OptionBL.GetOptionById(1127); else option = OptionBL.GetOptionById(1126); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion #region Numéro de registre national (BE uniquement) if (!string.IsNullOrEmpty(Upsilab.Business.Utility.SessionManager.GetHostCodeSession()) && Upsilab.Business.Utility.SessionManager.GetHostCodeSession() == Upsilab.Business.Utility.PageLanguageHelper.HostCode.BE.ToString()) { optionAttribute = OptionBL.GetOptionAttributeById(773); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.NumRegNational, "txt", lstOptionValues, db); } #endregion #endregion } } #endregion #endregion #endregion } else if (customer.IsCorporation.HasValue && customer.IsCorporation.Value) { #region B- PM #region IDENTITE PERSONNE MORALE //Raison sociale optionAttribute = OptionBL.GetOptionAttributeById(381); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.CompanyName, "txt", lstOptionValues, db); //Sigle optionAttribute = OptionBL.GetOptionAttributeById(382); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Sigle, "txt", lstOptionValues, db); //RCS optionAttribute = OptionBL.GetOptionAttributeById(383); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.NumRCS, "txt", lstOptionValues, db); //Ville d'enregistrement optionAttribute = OptionBL.GetOptionAttributeById(384); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.CityRegistration, "txt", lstOptionValues, db); //Siren optionAttribute = OptionBL.GetOptionAttributeById(385); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.NumSIREN, "txt", lstOptionValues, db); //Date d'immatriculation optionAttribute = OptionBL.GetOptionAttributeById(386); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, (customer.DateRegistration.HasValue) ? customer.DateRegistration.Value.ToString() : "", "txt", lstOptionValues, db); //Adresse fiscale optionAttribute = OptionBL.GetOptionAttributeById(390); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.FiscalAddrress, "txt", lstOptionValues, db); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Adress, "txt", lstOptionValues, db); // Code postal Fiscal optionAttribute = OptionBL.GetOptionAttributeById(743); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.FiscalZipCode, "txt", lstOptionValues, db); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.ZipCode, "txt", lstOptionValues, db); // Ville Fiscale optionAttribute = OptionBL.GetOptionAttributeById(744); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.FiscalCity, "txt", lstOptionValues, db); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.City, "txt", lstOptionValues, db); //Tel optionAttribute = OptionBL.GetOptionAttributeById(391); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserMobilePhone, "txt", lstOptionValues, db); //Fax optionAttribute = OptionBL.GetOptionAttributeById(745); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Fax, "txt", lstOptionValues, db); //Adresse mail optionAttribute = OptionBL.GetOptionAttributeById(392); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserEmail, "txt", lstOptionValues, db); #endregion #region FORME JURIDIQUE if (customer.IsCorporation.HasValue && customer.IsCorporation.Value && !string.IsNullOrEmpty(customer.LegalForm)) { if (customer.LegalForm == "SA") { option = OptionBL.GetOptionById(542); } else if (customer.LegalForm == "SAS") { option = OptionBL.GetOptionById(543); } else if (customer.LegalForm == "SARL") { option = OptionBL.GetOptionById(544); } else if (customer.LegalForm == "EURL") { option = OptionBL.GetOptionById(545); } else if (customer.LegalForm.StartsWith("SC")) { option = OptionBL.GetOptionById(546); } else if (customer.LegalForm.StartsWith("Association")) { option = OptionBL.GetOptionById(549); } else if (customer.LegalForm != null && customer.LegalForm.IndexOf("Appartenance", 0) == 0) { option = OptionBL.GetOptionById(555); } else if (!string.IsNullOrEmpty(customer.LegalForm_Autre)) // Sinon on coche AUTRE { option = OptionBL.GetOptionById(552); //Autre forme optionAttribute = OptionBL.GetOptionAttributeById(387); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.LegalForm_Autre, "txt", lstOptionValues, db); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); #region Société Civile (S.C.) => IS ou IR if (customer.LegalForm == "SC_IS") { option = OptionBL.GetOptionById(547); } else if (customer.LegalForm == "SC_IR") { option = OptionBL.GetOptionById(548); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); #endregion #region Association => IS ou IR if (customer.LegalForm == "Association_IS") { option = OptionBL.GetOptionById(550); } else if (customer.LegalForm == "Association_IR") { option = OptionBL.GetOptionById(551); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); #endregion #region Autre => IS ou IR if (customer.LegalForm == "Autre_IS") { option = OptionBL.GetOptionById(553); } else if (customer.LegalForm == "Autre_IR") { option = OptionBL.GetOptionById(554); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); #endregion } //TODO : LegalForm Champ Appartenance au Groupe //optionAttribute = OptionBL.GetOptionAttributeById(652); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.LegalForm_Appartenance_Groupe, "txt", lstOptionValues, db); //Pays de domiciliation optionAttribute = OptionBL.GetOptionAttributeById(389); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Country, "txt", lstOptionValues, db); //Resident if (customer.IsResident != null) { if (customer.IsResident.Value) { option = OptionBL.GetOptionById(556); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //Pays de domiciliation => France par défaut optionAttribute = OptionBL.GetOptionAttributeById(389); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, "France", "txt", lstOptionValues, db); } else { option = OptionBL.GetOptionById(557); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } } //Gafi if (customer.Gafi != null) { if (customer.Gafi.Value) { option = OptionBL.GetOptionById(559); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { option = OptionBL.GetOptionById(560); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } } //Offshore if (customer.OffShore != null) { if (customer.OffShore.Value) { option = OptionBL.GetOptionById(562); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { option = OptionBL.GetOptionById(563); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } } #endregion #region DIRIGEANT / REPRESENTANT ////Nom dirigeant //optionAttribute = OptionBL.GetOptionAttributeById(399); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserName, "txt", lstOptionValues, db); ////Prenom dirigeant //optionAttribute = OptionBL.GetOptionAttributeById(400); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserFirstName, "txt", lstOptionValues, db); ////Mobile dirigeant //optionAttribute = OptionBL.GetOptionAttributeById(401); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.User.UserMobilePhone, "txt", lstOptionValues, db); bool activate = true; if (activate) { //Est ce que le customer a un lien ? : copier l'info de son conjoint CustomerProspectRelation customerRelation = customer.CustomerProspectRelation.Where(cr => cr.TypeRelation == CustomerProspect.CustomerProspectBL.TypeRelation.Dirigeant.ToString()).FirstOrDefault(); if (customerRelation != null && customerRelation.CustomerProspect1 != null) { #region Identity //Civilité #region Title if (customerRelation.CustomerProspect1.Title != null && !string.IsNullOrEmpty(customerRelation.CustomerProspect1.Title)) { if (customerRelation.CustomerProspect1.Title.CompareTo("Monsieur") == 0) { option = OptionBL.GetOptionById(578); } else if (customerRelation.CustomerProspect1.Title.CompareTo("Madame") == 0) { option = OptionBL.GetOptionById(577); } else if (customerRelation.CustomerProspect1.Title.CompareTo("Mademoiselle") == 0) { option = OptionBL.GetOptionById(1231); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //UserName optionAttribute = OptionBL.GetOptionAttributeById(399); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserName, "txt", lstOptionValues, db); //Prenom optionAttribute = OptionBL.GetOptionAttributeById(400); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserFirstName, "txt", lstOptionValues, db); //DateOfBirth optionAttribute = OptionBL.GetOptionAttributeById(403); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, (customerRelation.CustomerProspect1.DateOfBirth.HasValue) ? customerRelation.CustomerProspect1.DateOfBirth.Value.ToString("dd/MM/yyyy") : null, "txt", lstOptionValues, db); //Private phone optionAttribute = OptionBL.GetOptionAttributeById(401); //??? SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.PrivatePhone, "txt", lstOptionValues, db); //Mobile phone optionAttribute = OptionBL.GetOptionAttributeById(402);//???? SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserMobilePhone, "txt", lstOptionValues, db); //Email optionAttribute = OptionBL.GetOptionAttributeById(747); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.User.UserEmail, "txt", lstOptionValues, db); //Fax optionAttribute = OptionBL.GetOptionAttributeById(746); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Fax, "txt", lstOptionValues, db); //Address optionAttribute = OptionBL.GetOptionAttributeById(748); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Adress, "txt", lstOptionValues, db); //Code postal optionAttribute = OptionBL.GetOptionAttributeById(749); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.ZipCode, "txt", lstOptionValues, db); //Ville optionAttribute = OptionBL.GetOptionAttributeById(750); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.City, "txt", lstOptionValues, db); //Profession optionAttribute = OptionBL.GetOptionAttributeById(404); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Profession, "txt", lstOptionValues, db); //Nationality optionAttribute = OptionBL.GetOptionAttributeById(405); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Nationality, "txt", lstOptionValues, db); //Resident #region IsResident if (customerRelation.CustomerProspect1.IsResident != null) //mila jerena { if (customerRelation.CustomerProspect1.IsResident.Value) { option = OptionBL.GetOptionById(580); optionAttribute = OptionBL.GetOptionAttributeById(406); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, "France", "txt", lstOptionValues, db); //France par défaut si résident } else { option = OptionBL.GetOptionById(581); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); //Pays de residence optionAttribute = OptionBL.GetOptionAttributeById(406); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customerRelation.CustomerProspect1.Country, "txt", lstOptionValues, db); //France par défaut si résident } #endregion //Gafi #region GAFI if (customerRelation.CustomerProspect1.Gafi != null) { if (customerRelation.CustomerProspect1.Gafi.Value) { option = OptionBL.GetOptionById(584); } else { option = OptionBL.GetOptionById(585); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion //OFFSHORE #region OFFSHORE if (customerRelation.CustomerProspect1.OffShore != null) { if (customerRelation.CustomerProspect1.OffShore.Value) { option = OptionBL.GetOptionById(587); } else { option = OptionBL.GetOptionById(588); } SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } #endregion #endregion } } #endregion #region ORIGINE DE LA RELATION //Date origine if (customer.RelationshipBeginingDate.HasValue) { //Option client depuis option = OptionBL.GetOptionById(601); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); optionAttribute = OptionBL.GetOptionAttributeById(422); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.RelationshipBeginingDate.Value.ToString("dd/MM/yyyy"), "txt", lstOptionValues, db); } else if (!string.IsNullOrEmpty(customer.RelationshipType)) { /*new*/ if (customer.RelationshipType.Equals("contactparrecommandation")) { //Option contact par recommandation option = OptionBL.GetOptionById(605); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else if (customer.RelationshipType.Equals("clientdepuis")) { //Option client depuis option = OptionBL.GetOptionById(601); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { //Option Autre option = OptionBL.GetOptionById(612); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } /*end new*/ } #endregion #region SOCIETE COTEE //Societe cotee if (customer.ListedCompany != null) { if (customer.ListedCompany.Value) { option = OptionBL.GetOptionByNameKey("ClientPM_Titulaire_039"); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { option = OptionBL.GetOptionByNameKey("ClientPM_Titulaire_040"); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } } #region "Societe cotee" //Sur quel marché optionAttribute = OptionBL.GetOptionAttributeById(393); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Market, "txt", lstOptionValues, db); //Address //optionAttribute = OptionBL.GetOptionAttributeById(394); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Adress, "txt", lstOptionValues, db); //Code postal //optionAttribute = OptionBL.GetOptionAttributeById(395); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.ZipCode, "txt", lstOptionValues, db); //Ville //optionAttribute = OptionBL.GetOptionAttributeById(396); //SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.City, "txt", lstOptionValues, db); #endregion #endregion #region SECTEUR ACTIVITE //Industry optionAttribute = OptionBL.GetOptionAttributeById(397); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.Industry, "txt", lstOptionValues, db); //Autre optionAttribute = OptionBL.GetOptionAttributeById(398); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.OtherIndustry, "txt", lstOptionValues, db); #region HasIndustryRestriction if (customer.HasIndustryRestriction != null) { if (customer.HasIndustryRestriction.Value) { option = OptionBL.GetOptionByNameKey("ClientPM_Titulaire_049"); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { option = OptionBL.GetOptionByNameKey("ClientPM_Titulaire_050"); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } //Industrie restriction optionAttribute = OptionBL.GetOptionAttributeById(388); SetOptionToSave(idReport, optionAttribute.Option, optionAttribute, customer.IndustryRestriction, "txt", lstOptionValues, db); } #endregion #region RestrictionPreventInvest if (customer.RestrictionPreventInvest != null) { if (customer.RestrictionPreventInvest.Value) { option = OptionBL.GetOptionByNameKey("ClientPM_Titulaire_053"); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } else { option = OptionBL.GetOptionByNameKey("ClientPM_Titulaire_054"); SetOptionToSave(idReport, option, null, null, "rb", lstOptionValues, db); } } #endregion #endregion #endregion } db.SaveChanges(); db.Dispose(); } catch (Exception ex) { Log.Log.AppendException(ex); } }