using System; using System.Collections.Generic; using System.Web.UI; using System.Data; using System.Web; using ConsulenzaEvoluta; using PrometeiaMessage.bancafideuram.nac.anagrafica; public partial class reportPatriImmobiliare : System.Web.UI.Page { public string codCliente; public string tipoRete; public string codPB; public string codAs; public string codiceUtenteQueryString; public string token; public string userName = string.Empty; public string codiceApplicazione = string.Empty; public string checkPrivacy; private Nucleo _nucleo; public string pathNav; public int idReport; //indica il modello (fixed) COMPLETO di QUESTO report da cui costruire la treeview iniziale private string sUtente; public int chiaveClientePB; public static int tpReport = 8; //valore proprietario (fixed) di QUESTO report //DA VALUTARE!! public static int idReportAlbero = 16; //valore proprietario (fixed) di QUESTO report //DA VALUTARE!! public static int idReportBase = 16; public static int idReportCompleto = 16; public string codiceRete; public string codicePB; public string ambiente; public int lastSavedReportId; public static string nomeReport = "PATRIMONIOIMMOBILLIARE"; //valore proprietario (fixed) di QUESTO report public static string nomeReportCompleto = "Nucleo completo"; //valore proprietario (fixed) di QUESTO report public static string nomeReportRischio = "NUCLEO"; //valore proprietario (fixed) di QUESTO report public static string nomeReportBaseRischio = "Nucleo base"; //valore proprietario (fixed) di QUESTO report public static string nomeReportCompletoRischio = "Nucleo completo"; //valore proprietario (fixed) di QUESTO report string nomeReportPerLabel; string descrizioneReportPerLabel; public int reportIdToLoadBack = -1; public string endOfjob = "0"; //private bool reportNominativo = false; int IDReportToLoad = -1; public string baseCompleto; public string reportName; private int IdModello; //private GestReport m = new GestReport(); protected void Page_Load(object sender, EventArgs e) { if (Debug.iSDebug && Request.QueryString.Get("tipoRete") == null) { Response.Redirect("reportPatriImmobiliare.aspx?codPB=" + Debug.Agente + "&chiaveClientePB=" + Debug.ChiaveClientePB + "&token=&tipoRete=" + Debug.Rete); return; } token = Request.QueryString.Get("token"); codiceRete = Request.QueryString.Get("tipoRete"); tipoRete = Request.QueryString.Get("tiporete").ToUpper(); codicePB = Request.QueryString.Get("codPB"); codPB = Request.QueryString.Get("codpb").ToUpper(); codAs = Request.QueryString.Get("codas") != null ? Request.QueryString.Get("codas").ToUpper() : string.Empty; codiceUtenteQueryString = tipoRete.Trim() + codicePB.Trim(); chiaveClientePB = Convert.ToInt32(Request.QueryString["chiaveClientePB"]); if(DDLModello.Text.Equals("tipologia")){ IdModello = codiceRete.Equals("S") ? 6 : 5; }else{ IdModello = codiceRete.Equals("S") ? 12 : 11; } if (!Page.IsPostBack) { caricatutto(); } } protected void ButApplica_Click(object sender, EventArgs e) { try { caricatutto(); } catch { } finally { // DatiHidden.Value = m.GetHtmlClient(); } } private void caricatutto() { GestReport m = new GestReport(); if(!DatiHidden.Value.Equals("")){ m.SetHtmlClient(DatiHidden.Value); m.Template = new SchedaReport[0]; } string subModello ="finalità"; if (IdModello == 5 || IdModello == 6) subModello = "Immobiliare"; #region From Gestione Modelli //string loadingReport = Request.QueryString.Get("idReportToLoad"); //nomeReportPerLabel = Request.QueryString.Get("nomeInizialeReport"); //descrizioneReportPerLabel = Request.QueryString.Get("descrizioneInizialeReport"); #endregion if (HFERRORMSG.Value.Equals("")) { m.TipoRete = codiceRete.Equals("F") ? "Fideuram" : "SanPaolo Invest"; m.AcquisisciModello(IdModello); if (subModello.Equals("Immobiliare")) m.AcquisisciElencoFabbricati(chiaveClientePB); else m.AcquisisciElencoFabbricatiFinalità(chiaveClientePB); } List vincoli = new List(); if (subModello.Equals("Immobiliare")) { vincoli = m.GetVincoliSchedeImmobigliare(chiaveClientePB); m.SetEnableSchede(vincoli); foreach (SchedaReport sr in m.Modello) { if (sr.Sezioni == "37" && !vincoli.Exists(item => item == "flaganomaliafabbricati")) sr.Vincoli += "&CON_40_Sono presenti anomalie catastali(fabbricati). è necessario inserire la scheda 8 o eliminare la scheda 5"; if (sr.Sezioni == "38" && !vincoli.Exists(item => item == "flaganomaliaterreni")) sr.Vincoli += "&CON_40_Sono presenti anomalie catastali(terreni). è necessario inserire la scheda 8 o eliminare la scheda 6"; } } else { vincoli = m.GetVincoliSchedeImmobigliareFinalità(chiaveClientePB); m.SetEnableSchede(vincoli); foreach (SchedaReport sr in m.Modello) { if (sr.Sezioni == "143" && !vincoli.Exists(item => item == "flaganomaliafabbricati")) sr.Vincoli += "&CON_146_Sono presenti anomalie catastali(fabbricati). è necessario inserire la scheda 8 o eliminare la scheda 5"; if (sr.Sezioni == "144" && !vincoli.Exists(item => item == "flaganomaliaterreni")) sr.Vincoli += "&CON_146_Sono presenti anomalie catastali(terreni). è necessario inserire la scheda 8 o eliminare la scheda 6"; } } if (vincoli.Exists(item => item == "flagfinalita")) { DDLModello.Enabled = false; ButApplica.Enabled = false; ButApplica.Attributes.Add("style", "disabled: disabled;"); ButApplica.Attributes.Add("style", "opacity: 0.5;"); } DatiHidden.Value = m.GetHtmlClient(); SessionGeneratorPdf spdf = new SessionGeneratorPdf(chiaveClientePB, null, subModello, null); if (Debug.iSDebug) { Debug.LogFunzionalita("iSDebug", "return forzato"); return; } #region Recupero token da AnagraficaWS.GetVersion if (string.IsNullOrEmpty(token)) { string codPortal = WebConfigParameter.getParameter("CODICEPORTALEPERVERSIONESIMPB"); InfoClient infoCliente = new InfoClient(); infoCliente.codiceApplicazione = WebConfigParameter.getParameter("CODICEAPPLICAZIONE").ToString(); infoCliente.codiceRete = codiceRete; infoCliente.versioneDatabaseSIMPB = 0; AnagraficaWS wsana = new AnagraficaWS(); PBRes risposta = wsana.GetVersion(infoCliente, codPortal); token = risposta.info.versioneDatabaseSIMPB.ToString(); } #endregion #region InfoClient e ChiaveCliente di GlobalPosition e Anagrafica // Global Position PrometeiaMessage.bancafideuram.nac.globalposition.InfoClient _infoCliente_GlobalPosition = new PrometeiaMessage.bancafideuram.nac.globalposition.InfoClient(); _infoCliente_GlobalPosition.codiceApplicazione = WebConfigParameter.getParameter("CODICEAPPLICAZIONE").ToString(); _infoCliente_GlobalPosition.versioneDatabaseSIMPB = int.Parse(token); PrometeiaMessage.bancafideuram.nac.globalposition.ChiaveCliente _chiaveCliente_GlobalPosition = new PrometeiaMessage.bancafideuram.nac.globalposition.ChiaveCliente(); _chiaveCliente_GlobalPosition.potenzialeClienteNAC = true; #endregion #region Gestione Autorizzazione if (WebConfigParameter.getParameter("Ambiente") == "esterno") userName = User.Identity.Name; else userName = WebConfigParameter.getParameter("UtenzaWindowsAccessoHP"); //1) utente loggato (VINCENZO UT.PROVA 2 MAGRI) //2) utente impersonificato (VIOTTI GIANCARLO) string AbilitazionePrimaria = string.Empty; codiceApplicazione = WebConfigParameter.getParameter("CodiceApplicazione"); string codiceUtente = tipoRete + Utente.GetCodiceUtente(userName); // è il codiceutente con cui andrò a interrogare la ConsulenzaBase.dbo.PromotoreBancario per recuperare le informazioni dell'utente loggato Utente utenteLoggato_WS = Utente.GetAutorizzazioniAccessoGestioneControlli(userName, codiceApplicazione); // utente loggato (VINCENZO UT.PROVA 2 MAGRI), informazioni prese dai WS Utente utenteLoggato = Utente.GetProfiloUtente(codiceUtente, utenteLoggato_WS.ProfiloUtenteLoggato); // utente loggato (VINCENZO UT.PROVA 2 MAGRI) , informazioni prese da DB utenteLoggato.ProfiloUtenteLoggato = utenteLoggato_WS.ProfiloUtenteLoggato; utenteLoggato.AbilitazionePrimaria = utenteLoggato_WS.AbilitazionePrimaria; utenteLoggato.IsUtenteImpersonificato = utenteLoggato_WS.IsUtenteImpersonificato; utenteLoggato.UtenteAutorizzatoApplicazione = utenteLoggato_WS.UtenteAutorizzatoApplicazione; Utente utenteImpersonificato = Utente.GetProfiloUtente(codiceUtenteQueryString, null); // utente impersonificato (VIOTTI GIANCARLO) utenteImpersonificato.AbilitazionePrimaria = utenteLoggato.AbilitazionePrimaria; utenteImpersonificato.IsUtenteImpersonificato = utenteLoggato.IsUtenteImpersonificato; utenteImpersonificato.UtenteAutorizzatoApplicazione = utenteLoggato.UtenteAutorizzatoApplicazione; // FIX da valutare per TK T-300675-L4Y3 if (!codAs.Equals(codPB)) codiceUtenteQueryString = codiceUtente; Utente utenteSoloPerAutorizzazione = Utente.GetAutorizzazioni(userName, codiceApplicazione, tipoRete, codiceUtenteQueryString, Convert.ToInt32(token)); if (utenteSoloPerAutorizzazione.UtenteAutorizzatoApplicazione) { if (Request.Browser.Cookies) { #region utente Loggato (UtenteLoggatoDiSessione) string utenteLoggatoString = Utente.SerializeMessage(utenteLoggato); utenteLoggatoString = HttpUtility.UrlDecode(utenteLoggatoString.TrimStart().TrimEnd()); Session.Add("UtenteLoggatoDiSessione", utenteLoggatoString); #endregion #region utente Impersonificato (UtenteImpersonificatoDiSessione) string utenteImpersonificatoString = Utente.SerializeMessage(utenteImpersonificato); utenteImpersonificatoString = HttpUtility.UrlDecode(utenteImpersonificatoString.TrimStart().TrimEnd()); Session.Add("UtenteImpersonificatoDiSessione", utenteImpersonificatoString); #endregion } else { AbilitazionePrimaria = string.Empty; if (utenteLoggato != null) if (utenteLoggato.AbilitazionePrimaria != null) AbilitazionePrimaria = utenteLoggato.AbilitazionePrimaria; Response.Redirect("error.aspx?UtenteWindows=" + userName + "&UtentePB=" + codiceUtenteQueryString + "&CodiceApplicazione=" + WebConfigParameter.getParameter("CODICEAPPLICAZIONE") + "&VersioneSIMPB=" + token.ToString() + "&AbilitazionePrimaria=" + AbilitazionePrimaria); } } else { AbilitazionePrimaria = string.Empty; if (utenteLoggato != null) if (utenteLoggato.AbilitazionePrimaria != null) AbilitazionePrimaria = utenteLoggato.AbilitazionePrimaria; Response.Redirect("error.aspx?UtenteWindows=" + userName + "&UtentePB=" + codiceUtenteQueryString + "&CodiceApplicazione=" + WebConfigParameter.getParameter("CODICEAPPLICAZIONE") + "&VersioneSIMPB=" + token.ToString() + "&AbilitazionePrimaria=" + AbilitazionePrimaria + "&UtenteAutorizzato=" + utenteLoggato_WS.UtenteAutorizzatoApplicazione.ToString()); } #endregion } }