300 lines
12 KiB
C#
300 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 System.Threading;
|
|
using System.Globalization;
|
|
|
|
namespace PDFGenerator.Presentation.Section
|
|
{
|
|
class S174 : ISezione
|
|
{
|
|
|
|
#region ISezione Members
|
|
|
|
public void writeSezione(DataThread dataThread)
|
|
{
|
|
DocumentPDF document = dataThread.DocumentPDF;
|
|
DataSetS174 set = (DataSetS174)dataThread.Data.DatiSezione;
|
|
if (dataThread.TipoContratto != TipoContratto.Private)
|
|
{
|
|
|
|
|
|
if ((set.Bonus.Rows.Count > 0) && (set.Protetti.Rows.Count == 1))
|
|
|
|
{
|
|
if (document.checkMargin(280))
|
|
document.addPage();
|
|
}
|
|
else
|
|
{
|
|
|
|
if (document.checkMargin(260))
|
|
document.addPage();
|
|
}
|
|
}
|
|
|
|
|
|
document.setSezTitolo(dataThread.SezioneReport.Titolo);
|
|
|
|
|
|
if (set.Bonus.Rows.Count > 0)
|
|
{
|
|
//if (document.checkMargin(190))
|
|
// document.addPage();
|
|
|
|
#region E-FOI80
|
|
//E-FOI80 if ((set.Bonus.Rows.Count == 1) && (set.Protetti.Rows.Count > 0))
|
|
if ((set.Bonus.Rows.Count == 1) && (set.FOI80.Rows.Count > 0))
|
|
#endregion
|
|
{
|
|
if (document.checkMargin(280))
|
|
document.addPage();
|
|
}
|
|
else
|
|
{
|
|
|
|
if (document.checkMargin(240))
|
|
document.addPage();
|
|
}
|
|
|
|
#region E-FOI80
|
|
//E-FOI80 if (set.Protetti.Rows.Count > 0)
|
|
if (set.FOI80.Rows.Count > 0)
|
|
#endregion
|
|
|
|
{
|
|
document.setChapterHeader("");
|
|
document.setSezTitoloWithoutNumber("Bonus");
|
|
}
|
|
string testo = dataThread.SezioneReport.TestoIntroduttivo;
|
|
testo = testo.Replace("$/Prodotto/$", set.Bonus.Rows[0]["DES_PROD"].ToString());
|
|
document.setChapterHeader(testo, 0, 520, 8);
|
|
Bonus(dataThread);
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
private void Bonus(DataThread dataThread)
|
|
{
|
|
|
|
DocumentPDF document = dataThread.DocumentPDF;
|
|
DataSetS174 set = (DataSetS174)dataThread.Data.DatiSezione;
|
|
|
|
float htestosotto = 0;
|
|
|
|
for (int r = 0; r < set.Bonus.Rows.Count; r++)
|
|
{
|
|
Tabella tabellaDati = new Tabella();
|
|
tabellaDati.HeaderFont = 8;
|
|
DataRow riga = set.Bonus.Rows[r];
|
|
if (r == set.Bonus.Rows.Count - 1) htestosotto = 100;
|
|
if (document.checkMargin((tabellaDati.AltezzaCella * 5) + htestosotto))
|
|
document.addPage();
|
|
tabellaDati.Header = true;
|
|
tabellaDati.Y = document.getLastPos();
|
|
tabellaDati.X = document.getMargineLeft();
|
|
tabellaDati.Colonne.Add(new Colonna("DESCRIZIONE", "Contratto " + riga["cod_conf"], 352, TipoAllineamento.SINISTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("CTV", "Controvalore (€)", 90, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("DATARIF", "Data di riferimento", 70, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Draw(new DatiTabella(TabellaBonus(riga)), document);
|
|
document.setLastPos(tabellaDati.AltezzaTabella - 15);
|
|
}
|
|
document.setChapterHeader(dataThread.SezioneReport.Nota, 0, 520, 7);
|
|
}
|
|
private void CapitaleProtetto(DataThread dataThread)
|
|
{
|
|
|
|
DocumentPDF document = dataThread.DocumentPDF;
|
|
DataSetS174 set = (DataSetS174)dataThread.Data.DatiSezione;
|
|
|
|
float htestosotto = 0;
|
|
|
|
|
|
for (int r = 0; r < set.Protetti.Rows.Count; r++)
|
|
{
|
|
Tabella tabellaDati = new Tabella();
|
|
tabellaDati.HeaderFont = 8;
|
|
DataRow riga = set.Protetti.Rows[r];
|
|
if (r == set.Protetti.Rows.Count - 1) htestosotto = 100;
|
|
if (document.checkMargin((tabellaDati.AltezzaCella * 4) + htestosotto))
|
|
document.addPage();
|
|
tabellaDati.Header = true;
|
|
tabellaDati.Y = document.getLastPos();
|
|
tabellaDati.X = document.getMargineLeft();
|
|
|
|
#region FOI80
|
|
//E-FOI80 tabellaDati.Colonne.Add(new Colonna("DESCRIZIONE", "Descrizione", 232, TipoAllineamento.SINISTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("DESCRIZIONE", riga["DES_PROD_TIT"] + "<br>Contratto " + riga["COD_CONF"], 232, TipoAllineamento.SINISTRA, false, 7, false));
|
|
#endregion
|
|
|
|
tabellaDati.Colonne.Add(new Colonna("QUOTA", "Quota (€)", 60, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("NUMEROQUOTE", "Numero Quote", 60, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("CONTROVALORE", "Controvalore (€)", 90, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("DATARIF", "Data di riferimento", 70, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Draw(new DatiTabella(TabellaCapitaleProtetto(riga)), document);
|
|
document.setLastPos(tabellaDati.AltezzaTabella - 15);
|
|
}
|
|
string nota = dataThread.SezioneReport.Nota;
|
|
nota = nota.Replace("$/QMaxPerc/$", set.Protetti.Rows[0]["QUOTA_MAX_PERC"].ToString());
|
|
document.setChapterHeader(nota, 0, 520, 7);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private DataTable TabellaBonus(DataRow riga)
|
|
{
|
|
DataTable dt = new DataTable();
|
|
dt.Columns.Add("DESCRIZIONE");
|
|
dt.Columns.Add("CTV");
|
|
dt.Columns.Add("DATARIF");
|
|
DataRow dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DES_PROD"];
|
|
dr["CTV"] = riga["CTV"];
|
|
dr["DATARIF"] = riga["DT_TRIM"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DESBONUS_M"];
|
|
dr["CTV"] = riga["BONUS_M"];
|
|
dr["DATARIF"] = riga["DTDEC_M"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DESBONUS_5"];
|
|
dr["CTV"] = riga["BONUS_5"];
|
|
dr["DATARIF"] = riga["DTDEC_5"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DESBONUS_10"];
|
|
dr["CTV"] = riga["BONUS_10"];
|
|
dr["DATARIF"] = riga["DTDEC_10"];
|
|
dt.Rows.Add(dr);
|
|
return dt;
|
|
}
|
|
|
|
private DataTable TabellaCapitaleProtetto(DataRow riga)
|
|
{
|
|
DataTable dt = new DataTable();
|
|
dt.Columns.Add("DESCRIZIONE");
|
|
dt.Columns.Add("QUOTA");
|
|
dt.Columns.Add("NUMEROQUOTE");
|
|
dt.Columns.Add("CONTROVALORE");
|
|
dt.Columns.Add("DATARIF");
|
|
DataRow dr = dt.NewRow();
|
|
|
|
#region FOI80
|
|
//E-FOI80 dr["DESCRIZIONE"] = riga["DES_PROD"] + " " + riga["COD_CONF"];
|
|
dr["DESCRIZIONE"] = riga["DES_PROD"];
|
|
#endregion
|
|
|
|
dr["QUOTA"] = riga["QUOTA"];
|
|
dr["NUMEROQUOTE"] = riga["NUMEROQUOTE"];
|
|
dr["CONTROVALORE"] = riga["CONTROVALORE"];
|
|
dr["DATARIF"] = riga["DATARIF"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DES_MAX"];
|
|
dr["QUOTA"] = riga["QUOTA_MAX"];
|
|
dr["NUMEROQUOTE"] = "-";
|
|
dr["CONTROVALORE"] = "-";
|
|
dr["DATARIF"] = riga["DATARIF_MAX"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DES_PROT"];
|
|
dr["QUOTA"] = riga["QUOTA_PROT"];
|
|
dr["NUMEROQUOTE"] = riga["NUMEROQUOTE_PROT"];
|
|
dr["CONTROVALORE"] = riga["CONTROVALORE_PROT"];
|
|
dr["DATARIF"] = "-";
|
|
dt.Rows.Add(dr);
|
|
return dt;
|
|
}
|
|
|
|
#region NUOVA GESTIONE FOI80 - 24/11/2015 - E_FOI80
|
|
private void FonditaliaCrescitaProtetta80(DataThread dataThread)
|
|
{
|
|
DocumentPDF document = dataThread.DocumentPDF;
|
|
DataSetS174 set = (DataSetS174)dataThread.Data.DatiSezione;
|
|
|
|
float htestosotto = 0;
|
|
|
|
|
|
for (int r = 0; r < set.FOI80.Rows.Count; r++)
|
|
{
|
|
Tabella tabellaDati = new Tabella();
|
|
tabellaDati.HeaderFont = 8;
|
|
DataRow riga = set.FOI80.Rows[r];
|
|
if (r == set.FOI80.Rows.Count - 1) htestosotto = 100;
|
|
if (document.checkMargin((tabellaDati.AltezzaCella * 4) + htestosotto))
|
|
document.addPage();
|
|
tabellaDati.Header = true;
|
|
tabellaDati.Y = document.getLastPos();
|
|
tabellaDati.X = document.getMargineLeft();
|
|
tabellaDati.Colonne.Add(new Colonna("DESCRIZIONE", "Contratto " + riga["CODCONF"], 232, TipoAllineamento.SINISTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("QUOTA", "Quota (€)", 60, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("NUMEROQUOTE", "Numero Quote", 60, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("CONTROVALORE", "Controvalore (€)", 90, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Colonne.Add(new Colonna("DATARIF", "Data di riferimento", 70, TipoAllineamento.DESTRA, false, 7, false));
|
|
tabellaDati.Draw(new DatiTabella(TabellaFOI80(riga)), document);
|
|
document.setLastPos(tabellaDati.AltezzaTabella - 15);
|
|
}
|
|
string nota = dataThread.SezioneReport.Nota;
|
|
nota = nota.Replace("$/QMaxPerc/$", set.FOI80.Rows[0]["QUOTA_MAX_PERC"].ToString());
|
|
document.setChapterHeader(nota, 0, 520, 7);
|
|
|
|
}
|
|
|
|
private DataTable TabellaFOI80(DataRow riga)
|
|
{
|
|
DataTable dt = new DataTable();
|
|
dt.Columns.Add("DESCRIZIONE");
|
|
dt.Columns.Add("QUOTA");
|
|
dt.Columns.Add("NUMEROQUOTE");
|
|
dt.Columns.Add("CONTROVALORE");
|
|
dt.Columns.Add("DATARIF");
|
|
DataRow dr = dt.NewRow();
|
|
//dr["DESCRIZIONE"] = riga["DESPROD"] + " " + riga["CODCONF"];
|
|
dr["DESCRIZIONE"] = riga["DESPROD"];
|
|
dr["QUOTA"] = riga["PREZZO"];
|
|
dr["NUMEROQUOTE"] = riga["QUOTE"];
|
|
dr["CONTROVALORE"] = riga["CTV"];
|
|
dr["DATARIF"] = riga["DTRIFE"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DESMAX"];
|
|
dr["QUOTA"] = riga["PREZZOMAX"];
|
|
dr["NUMEROQUOTE"] = "-";
|
|
dr["CONTROVALORE"] = "-";
|
|
dr["DATARIF"] = riga["DTPREZZOMAX"];
|
|
dt.Rows.Add(dr);
|
|
dr = dt.NewRow();
|
|
dr["DESCRIZIONE"] = riga["DESPROT"];
|
|
dr["QUOTA"] = riga["PREZZOPROT"];
|
|
dr["NUMEROQUOTE"] = riga["QUOTE"];
|
|
dr["CONTROVALORE"] = riga["CTRVIMPPROT"];
|
|
dr["DATARIF"] = "-";
|
|
dt.Rows.Add(dr);
|
|
return dt;
|
|
}
|
|
#endregion
|
|
|
|
|
|
}
|
|
}
|