2025-04-15 12:10:19 +02:00

223 lines
12 KiB
C#

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;
using ceTe.DynamicPDF;
using ceTe.DynamicPDF.Text;
using PDFGenerator.Presentation.Section.Tables;
using PDFGenerator.BusinessLayer.DataSection;
using PDFGenerator.BusinessLayer;
using ContrattoSei.Utilities;
using ceTe.DynamicPDF.PageElements;
namespace PDFGenerator.Presentation.Section
{
class S179 : ISezione
{
private string _header = "";
public string Header
{
get { return _header; }
set { _header = value; }
}
private TipoReport _tipologiaReport;
public TipoReport TipologiaReport
{
get { return _tipologiaReport; }
set { _tipologiaReport = value; }
}
private string _testoIntroduttivo = string.Empty;
public string TestoIntroduttivo
{
get { return _testoIntroduttivo; }
set { _testoIntroduttivo = value; }
}
private string _testoChiusura = string.Empty;
public string TestoChiusura
{
get { return _testoChiusura; }
set { _testoChiusura = value; }
}
public S179()
{
//
// TODO: Add constructor logic here
//
}
#region ISezione Members
public void writeSezione(DataThread dataThread)
{
DatiTabella datitab = new DatiTabella();
DocumentPDF document = dataThread.DocumentPDF;
DataSetS179 set = (DataSetS179)dataThread.Data.DatiSezione;
document.LastSectionCheckIn = "S179";
if (!document.LastSectionCheckIn.Equals("S184")) // Se non si è passati per la S184
{
//document.LastSectionCheckIn = "S179";
document.changePage();
}
else
{
if (document.LastSectionCheckIn.Equals("S184"))
{
document.setLastPos(document.getLastPos());
if (document.getLastPos() >= 750)
{
document.changePage();
document.nextPage(document.getMargineLeft());
}
}
else
{
if (document.getLastPos() >= 750)
{
document.changePage();
document.nextPage(document.getMargineLeft());
}
}
}
// document.changePage();
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
document.setSezTitoloDiagnosi(dataThread.SezioneReport.Titolo);
//string nota = dataThread.SezioneReport.Nota;
//if (dataThread.Rete.ToUpper() == "S")
// tempTesto = tempTesto.Replace("Fideuram", "Sanpaolo Invest");
document.setChapterHeader(dataThread.SezioneReport.TestoIntroduttivo.Replace("$/Banca/$", dataThread.NomeRete).Replace("nel patrimonio Sanpaolo Invest", "nel portafoglio"), 0, 520, 8);
document.setHeaderSpace(5);
//Header: non ho usato quello standard perché dovevo farlo su due righe
//Sfondo
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(document.getMargineLeft() - 5, document.getLastPos() - 18, 520 + 10, 23, 0, new RgbColor(232, 236, 237)));
//Leone: eliminata come da requisiti 20230509_Report Diagnosi Sei_FID_MUA+ESG.pptx
//Prima riga: Obbligazioni - Azioni
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Obbligazioni", document.getMargineLeft() + 5 + 132 + 90 -10, document.getLastPos() - 16, 520, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Azioni", document.getMargineLeft() + 5 + 132 + 90 + 95 + 90 +10, document.getLastPos() - 16, 520, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//Seconda riga: intestazioni colonne tabella
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Emittente", document.getMargineLeft(), document.getLastPos() - 12, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Controvalore (€)", document.getMargineLeft() + 5 + 132 + 30+2, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Concentrazione (%)", document.getMargineLeft() + 5 + 132 + 30 + 90-3+2, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Controvalore (€)", document.getMargineLeft() + 5 + 132 + 30 + 90 + 97+10, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Concentrazione (%)", document.getMargineLeft() + 5 + 132 + 30 + 90 + 97 + 90 +8, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//Leone: Modificate come da requisiti 20230509_Report Diagnosi Sei_FID_MUA+ESG.pptx
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Emittente", document.getMargineLeft(), document.getLastPos() - 12, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Controvalore (€)", document.getMargineLeft() + 5 + 132 + 30 + 2 - 20, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Concentrazione (%)", document.getMargineLeft() + 5 + 132 + 30 + 90 - 3 + 2 - 20, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Controvalore (€)", document.getMargineLeft() + 5 + 132 + 30 + 90 + 97 + 10 - 20, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Concentrazione (%)", document.getMargineLeft() + 5 + 132 + 30 + 90 + 97 + 90 + 8 - 20, document.getLastPos() - 6, 132, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
var currentX = document.getMargineLeft();
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Emittente", currentX, document.getLastPos() - 12, 112, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
currentX += 112;
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Controvalore (€)", currentX, document.getLastPos() - 12, 112, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
currentX += 112;
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Soglia Importo (Franchigia)", currentX, document.getLastPos() - 17, 85, 20, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
currentX += 85;
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Rating (€)", currentX, document.getLastPos() - 12, 57, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
currentX += 57;
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Concentrazione (%)", currentX, document.getLastPos() - 12, 80, 10, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
currentX += 80;
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label("Limite Concentrazione", currentX, document.getLastPos() - 17, 90, 20, Globals.OpenTypeFontVerdanaB, 8, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Red));
document.setLastPos(20);
//tab.Colonne.Add(new Colonna("Emittente", "Emittente", 132, TipoAllineamento.SINISTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("ObbligazioniControvalore", "Controvalore", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("ObbligazioniConcentrazione", "Concentrazione", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("AzioniControvalore", "Controvalore", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("AzioniConcentrazione", "Concentrazione", 97, TipoAllineamento.DESTRA, false, 7, false));
Tabella tab = new Tabella(document.getMargineLeft(), document.getLastPos());
if (dataThread.TipoReport.ToUpper() == "DIAGNOSI") tab.HeaderFont = 8;
tab.Header = false;
tab.LineaFineTabella = true;
tab.Datasource = datitab.table;
datitab.table = set.Tables["EmittentiConcentrazione"];
//datitab.setY(document.getLastPos());
//tab.Colonne.Add(new Colonna("Emittente", "", 132, TipoAllineamento.SINISTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("ObbligazioniControvalore", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("ObbligazioniConcentrazione", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("AzioniControvalore", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("AzioniConcentrazione", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//Versione precedente requisiti 20230509_Report Diagnosi Sei_FID_MUA+ESG.pptx
//tab.Colonne.Add(new Colonna("Emittente", "", 132, TipoAllineamento.SINISTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("ObbligazioniControvalore", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("ObbligazioniConcentrazione", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("AzioniControvalore", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//tab.Colonne.Add(new Colonna("AzioniConcentrazione", "", 97, TipoAllineamento.DESTRA, false, 7, false));
//Leone: modificate come da requisiti 20230509_Report Diagnosi Sei_FID_MUA+ESG.pptx
tab.Colonne.Add(new Colonna("Emittente", "", 112, TipoAllineamento.SINISTRA, false, 7, false));
tab.Colonne.Add(new Colonna("Controvalore", "", 75, TipoAllineamento.DESTRA, false, 7, false));
tab.Colonne.Add(new Colonna("franchigia", "", 105, TipoAllineamento.DESTRA, false, 7, false));
tab.Colonne.Add(new Colonna("Rating", "", 65, TipoAllineamento.DESTRA, false, 7, false));
tab.Colonne.Add(new Colonna("Concentrazione", "", 80, TipoAllineamento.DESTRA, false, 7, false));
tab.Colonne.Add(new Colonna("LimiteConcentrazione", "", 80, TipoAllineamento.DESTRA, false, 7, false));
tab.AltezzaCella = 23;
datitab.setCellSpace(0);
//setta posizione tabella
tab.Draw(datitab, document);
if (!document.LastSectionCheckIn.Equals("S184"))
document.setLastPos(tab.AltezzaTabella - 23 - 20);
else
document.setLastPos(document.getLastPos() * -1);
//if(dataThread.TipoReport.ToUpper().Equals("DIAGNOSI"))
//document.nextPage(document.getMargineLeft());
//Adriano 20180405 Da eliminare
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(document.getLastPos().ToString(), 0, document.getLastPos(), 200, 50));
//--Adriano 20180405
}
#endregion
}
}