using System; using Consulenza.ReportCommon; using Consulenza.DataServices.fideuram.data.service; namespace Consulenza.DataServices { /// /// Classe che gestisce i dati anagrafici del Cliente e del PrivateBanker /// public class Anagrafica : FideuramData { private const string ClassName = "Anagrafica"; /// /// Costruttore /// /// chiaveClientePb public Anagrafica(Int64 chiaveClientePb) { ChiaveClientePb = chiaveClientePb; } /// /// Recupera l'anagrafica del cliente /// /// public Cliente GetCliente() { var keyForCache = GetKeyForCache(ClassName, "GetCliente"); var cliente = new Cliente(); //if (CacheStore.Exists(keyForCache)) //{ // // Rileggo dalla cache // cliente = CacheStore.Get(keyForCache); //} //else //{ var data = Execute(new fideuram.data.service.rqData { clienteUnit = new fideuram.data.service.rqClienteUnit { anagraficaCliente = true } }); cliente = new Cliente { Chiave = ChiaveClientePb, CodiceFiscale = data.responseData.clienteUnit.anagrafica.codiceFiscale, Cognome = data.responseData.clienteUnit.anagrafica.cognome, Nome = data.responseData.clienteUnit.anagrafica.nome, PartitaIva = data.responseData.clienteUnit.anagrafica.partitaIva, DataSottoscrizioneContratto = data.responseData.clienteUnit.anagrafica.dtSottoscrizione, TipologiaContratto = data.responseData.clienteUnit.anagrafica.contratto, DescrizioneProfilo = data.responseData.clienteUnit.anagrafica.descProfiloReport, CodiceProfilo = data.responseData.clienteUnit.anagrafica.codProfilo #region MOK //Chiave = 250959, // CON PATR TERZI //Chiave = 385351, //Chiave = 196340, //Chiave = 4880, //CodiceFiscale = "ZZLDRN51E10B025O", //Cognome = "AZZALIN", //Nome = "ADRIANO", //PartitaIva = "", //DataSottoscrizioneContratto = DateTime.Today, //TipologiaContratto = "OLD", //DescrizioneProfilo = "AGGRESSIVO", //CodiceProfilo = 1 #endregion }; // Memorizzo in chache // CacheStore.Add(keyForCache, cliente); //} return cliente; } /// /// Recupera l'anagrafica del private bancker /// /// public PrivateBanker GetPrivateBanker() { // var keyForCache = GetKeyForCache(ClassName, "GetPrivateBanker"); var privateBanker = new PrivateBanker(); //if (CacheStore.Exists(keyForCache)) //{ // // Rileggo dalla cache // privateBanker = CacheStore.Get(keyForCache); //} //else //{ var data = Execute(new fideuram.data.service.rqData { clientePB = true }); privateBanker = new PrivateBanker { Cap = data.responseData.clientePB.holderProfile.zipCode ?? string.Empty, Citta = data.responseData.clientePB.holderProfile.city ?? string.Empty, Codice = data.responseData.clientePB.holderProfile.codAge ?? string.Empty, CodiceRete = data.responseData.clientePB.holderProfile.network ?? string.Empty, Indirizzo = data.responseData.clientePB.holderProfile.address ?? string.Empty, //Livello = data.responseData.clientePB.holderProfile.rank.Trim(), Nominativo = string.Format("{0} {1}", data.responseData.clientePB.holderProfile.surname, data.responseData.clientePB.holderProfile.name), NumeroCivico = "", //TODO è nell'indirizzo PrefissoTelefono =string.Empty,// data.responseData.clientePB.holderProfile.PrefissoTelefono ?? string.Empty, //TODO manca su ws e non è compreso nel phonenumber Telefono = data.responseData.clientePB.holderProfile.phoneNumber ?? string.Empty }; // Memorizzo in chache //re.Add(keyForCache, privateBanker); // } return privateBanker; } /// /// Ritorna il Quastionario Mifid del cliente. /// /// public questionarioBean GetQuestionarioCliente() { var keyForCache = GetKeyForCache(ClassName, "GetQuestionarioCliente"); var returnObject = new questionarioBean(); //if (CacheStore.Exists(keyForCache)) //{ // returnObject = CacheStore.Get(keyForCache); //} //else //{ var data = Execute(new rqData { piramideModelloUnit = new rqPiramideModelloUnit { questionarioMifid = true } }); if (data.responseData.piramideModelloUnit.questionarioMifid != null) returnObject = data.responseData.piramideModelloUnit.questionarioMifid; // Memorizzo in chache // CacheStore.Add(keyForCache, returnObject); //} return returnObject; } } }