672 lines
44 KiB
C#
672 lines
44 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using Consulenza.ExternalServices;
|
||
using Consulenza.ReportWriter.Business;
|
||
using Consulenza.ReportWriter.Business.Entity;
|
||
using Consulenza.ReportWriter.Business.OBJ_PDF;
|
||
using System.Data;
|
||
using Consulenza.ReportCommon;
|
||
|
||
namespace Consulenza.ReportWriter.Manager.Section.Immobiliare.MonitoraggioNucleo
|
||
{
|
||
/// <summary>
|
||
/// Glossario (id 42)
|
||
/// </summary>
|
||
//public class S10 : Monitoraggio.S10
|
||
//{
|
||
// public S10(EnvironmentFacade environmentFacade, int idSection)
|
||
// : base(environmentFacade, idSection)
|
||
// {
|
||
// }
|
||
//}
|
||
public class S10 : Entity.Section
|
||
{
|
||
public S10(EnvironmentFacade environmentFacade, int idSection)
|
||
: base(environmentFacade, idSection)
|
||
{
|
||
try
|
||
{
|
||
Draw();
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
SectionLogger.Write("S10", ex.Message, SectionLoggerMessageLevel.E, EnvironmentFacade.ReportEnvironment);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Scheda2. Patrimonio immobiliare –Sintesi (distribuzione del patrimonio complessivo del cliente diviso per tipologia e cointestatari)
|
||
/// </summary>
|
||
protected override sealed void Draw()
|
||
{
|
||
string titolo = "";
|
||
string paragrafoSx = "";
|
||
string paragrafoDx = "";
|
||
FormattedTextAreaPDF testoSx = null;
|
||
FormattedTextAreaPDF testoDx = null;
|
||
FormattedTextAreaPDF testoTitolo = null;
|
||
FormattedTextAreaPDF notaTabella = null;
|
||
int x1Linea, x2Linea;
|
||
|
||
var dataset = GetDataSet();
|
||
var _text = dataset.Tables[0];
|
||
var data = dataset.Tables[1];
|
||
var width = 340;
|
||
List<int> indiciPagina = _text.AsEnumerable()
|
||
.Select(z => z.Field<int>("idREP_IMM_MON_Pagina")).Distinct().ToList();
|
||
|
||
int j = 1;
|
||
foreach (var indice in indiciPagina)
|
||
{
|
||
|
||
#region Text OLD OLD
|
||
|
||
//if (_text.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).Count() > 0)
|
||
//{
|
||
// var testo = _text.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList();
|
||
|
||
// switch (j)
|
||
// {
|
||
// case 1:
|
||
// AddElement(new SpacePDF(45));
|
||
// foreach (var row in testo)
|
||
// {
|
||
// paragrafoSx = paragrafoDx = "";
|
||
// titolo = row.Field<string>("titolo") + "<br>";
|
||
|
||
// for (int i = 1; i <= 15; i++)
|
||
// paragrafoSx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
|
||
// // SPLIT PARAGRAFO
|
||
// if (paragrafoSx.Contains("SPLITPARAGRAPH"))
|
||
// {
|
||
// var listaSplit = StringExtensions.SplitAtOccurence(paragrafoSx, "SPLITPARAGRAPH", 1);
|
||
// paragrafoSx = listaSplit[0] + "</p>";
|
||
// paragrafoDx += "<p>";
|
||
// listaSplit.RemoveRange(0, 1);
|
||
// foreach (var stringa in listaSplit)
|
||
// paragrafoDx += stringa;
|
||
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// x1Linea = 35;
|
||
// x2Linea = 750;
|
||
// var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = true };
|
||
// var _titolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { AutoIncrementYWritable = false, FontSize = 10, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width) { FontSize = 10, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
|
||
// AddElement(_titolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(lineaVerticaleSeparazione);
|
||
// AddElement(new SpacePDF(10));
|
||
// AddElement(testoSx);
|
||
// AddElement(new SpacePDF(-5));
|
||
// AddElement(testoDx);
|
||
// AddElement(new SpacePDF(10));
|
||
// }
|
||
|
||
// else
|
||
// {
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 35, 40 + (600 / 2)) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// x1Linea = 35;
|
||
// x2Linea = 40 + (600 / 2) + 35;
|
||
// var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = true };
|
||
// testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { FontSize = 10, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// AddElement(testoTitolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(lineaVerticaleSeparazione);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(testoSx);
|
||
// AddElement(new SpacePDF(10));
|
||
|
||
// if (data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice
|
||
// && x.Field<string>("row1") != "").Count() > 0)
|
||
// {
|
||
// DataTable tabella = new DataTable();
|
||
|
||
// for (int index = 1; index <= 5; index++)
|
||
// tabella.Columns.Add("column" + index);
|
||
|
||
// List<string> columnName = new List<string>();
|
||
// for (int index = 1; index <= 5; index++)
|
||
// columnName.Add(data.Rows[0].Field<string>("column" + index));
|
||
// columnName.RemoveAll(item => item == null);
|
||
|
||
// foreach (var _row in data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice))
|
||
// {
|
||
// titolo = "<br>" + _row.Field<string>("descrizione");
|
||
|
||
// if (_row["row1"] != null && _row["row1"].ToString() != "")
|
||
// tabella.Rows.Add(_row["row1"], _row["row2"], _row["row3"], _row["row4"], _row["row5"]);
|
||
// }
|
||
|
||
// foreach (var column in tabella.Columns.Cast<DataColumn>().ToArray())
|
||
// if (tabella.AsEnumerable().All(dr => dr.IsNull(column)))
|
||
// tabella.Columns.Remove(column);
|
||
|
||
// AddElement(new ResetterYPDF());
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 410, 300) { AutoIncrementYWritable = true, FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// TablePDF table = new TablePDF(410, tabella)
|
||
// {
|
||
// Style = Style.Immobiliare,
|
||
// AlternateRow = false,
|
||
// HeaderHeight = 25,
|
||
// RowHeight = 10,
|
||
// Footer = false,
|
||
// ShowBorderLastLine = true,
|
||
// HeaderTextVerticalAlign = VerticalAlignmentType.Basso
|
||
// };
|
||
// for (int idColumn = 1; idColumn <= tabella.Columns.Count; idColumn++)
|
||
// table.Columns.Add(new ColumnPDF(tabella.Rows[0].Field<string>("column" + idColumn), idColumn == 1 ? 180 : 80, idColumn != 1 ? HorizontalAlignmentType.Centrato : HorizontalAlignmentType.Sinistra, false, false, 7, ColumnType.Testo, "column" + idColumn, columnName[idColumn - 1]) { HeaderFontColor = new ColorPDF(92, 89, 81), HeaderFontSize = 7, DeltaYContent = 1 });
|
||
|
||
|
||
// if (getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]).Length > 0)
|
||
// notaTabella = new FormattedTextAreaPDF(getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]), 410, table.Width - 15) { AutoIncrementYWritable = true, FontSize = 6, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify, DeltaX = 5, DeltaY = 5 };
|
||
|
||
// AddElement(new ResetterYPDF(50));
|
||
// AddElement(testoTitolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(table);
|
||
// if (getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]).Length > 0)
|
||
// AddElement(notaTabella);
|
||
// AddElement(new SpacePDF(15));
|
||
// }
|
||
// }
|
||
// }
|
||
// j++;
|
||
|
||
// break;
|
||
|
||
// case 2:
|
||
// AddElement(new PagePDF(PagePDF.PagePDFType.Generic));
|
||
// AddElement(new SpacePDF(45));
|
||
// int element = 0;
|
||
// foreach (var row in testo)
|
||
// {
|
||
// paragrafoSx = paragrafoDx = "";
|
||
// element++;
|
||
// titolo = row.Field<string>("titolo") + "<br>";
|
||
// if (row["posizione"].Equals("L"))
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// else
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 410, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
|
||
// x1Linea = row["posizione"].Equals("L") ? 35 : 410;
|
||
// x2Linea = row["posizione"].Equals("L") ? 340 : 750;
|
||
// var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = element > 2 ? false : true };
|
||
|
||
// for (int i = 1; i <= 15; i++)
|
||
// if (row["posizione"].Equals("L"))
|
||
// paragrafoSx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
// else
|
||
// paragrafoDx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
|
||
// if (row["posizione"].Equals("L"))
|
||
// testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { AutoIncrementYWritable = false, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// else
|
||
// testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width) { AutoIncrementYWritable = true, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
|
||
// if (element <= 2)
|
||
// {
|
||
// AddElement(new ResetterYPDF());
|
||
// AddElement(new SpacePDF(45));
|
||
// }
|
||
|
||
// if (element == 3)
|
||
// AddElement(new SpacePDF(10));
|
||
|
||
// if (element == 4)
|
||
// AddElement(new SpacePDF(-52));
|
||
|
||
// AddElement(testoTitolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(lineaVerticaleSeparazione);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(row["posizione"].Equals("L") ? testoSx : testoDx);
|
||
// AddElement(new SpacePDF(10));
|
||
// }
|
||
// break;
|
||
// }
|
||
//}
|
||
#endregion
|
||
|
||
#region Text OLD
|
||
|
||
//if (_text.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).Count() > 0)
|
||
//{
|
||
// var testo = _text.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList();
|
||
|
||
// switch (j)
|
||
// {
|
||
// case 1:
|
||
// AddElement(new SpacePDF(45));
|
||
// foreach (var row in testo)
|
||
// {
|
||
// paragrafoSx = paragrafoDx = "";
|
||
// titolo = row.Field<string>("titolo") + "<br>";
|
||
|
||
// for (int i = 1; i <= 15; i++)
|
||
// paragrafoSx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
|
||
// // SPLIT PARAGRAFO
|
||
// if (paragrafoSx.Contains("SPLITPARAGRAPH"))
|
||
// {
|
||
// var listaSplit = StringExtensions.SplitAtOccurence(paragrafoSx, "SPLITPARAGRAPH", 1);
|
||
// paragrafoSx = listaSplit[0] + "</p>";
|
||
// paragrafoDx += "<p>";
|
||
// listaSplit.RemoveRange(0, 1);
|
||
// foreach (var stringa in listaSplit)
|
||
// paragrafoDx += stringa;
|
||
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// x1Linea = 35;
|
||
// x2Linea = 750;
|
||
// var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = true };
|
||
// var _titolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { AutoIncrementYWritable = false, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width) { FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
|
||
// // Dati Statici 20181005
|
||
// //AddElement(new SpacePDF(15));
|
||
// //AddElement(_titolo);
|
||
// //AddElement(new SpacePDF(5));
|
||
// //AddElement(lineaVerticaleSeparazione);
|
||
// //AddElement(new SpacePDF(10));
|
||
// //AddElement(testoSx);
|
||
// //AddElement(new SpacePDF(-5));
|
||
// //AddElement(testoDx);
|
||
// //AddElement(new SpacePDF(10));
|
||
|
||
// AddElement(_titolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(lineaVerticaleSeparazione);
|
||
// AddElement(new SpacePDF(10));
|
||
// AddElement(testoSx);
|
||
// AddElement(new SpacePDF(-5));
|
||
// AddElement(testoDx);
|
||
// AddElement(new SpacePDF(-5));
|
||
// // End
|
||
|
||
// }
|
||
|
||
// else
|
||
// {
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 35, 40 + (600 / 2)) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// x1Linea = 35;
|
||
// x2Linea = 40 + (600 / 2) + 35;
|
||
// var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = true };
|
||
// testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// AddElement(testoTitolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(lineaVerticaleSeparazione);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(testoSx);
|
||
// AddElement(new SpacePDF(10));
|
||
|
||
// if (data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice
|
||
// && x.Field<string>("row1") != "").Count() > 0)
|
||
// {
|
||
// DataTable tabella = new DataTable();
|
||
|
||
// for (int index = 1; index <= 5; index++)
|
||
// tabella.Columns.Add("column" + index);
|
||
|
||
// List<string> columnName = new List<string>();
|
||
// for (int index = 1; index <= 5; index++)
|
||
// columnName.Add(data.Rows[0].Field<string>("column" + index));
|
||
// columnName.RemoveAll(item => item == null);
|
||
|
||
// foreach (var _row in data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice))
|
||
// {
|
||
// titolo = "<br>" + _row.Field<string>("descrizione");
|
||
|
||
// if (_row["row1"] != null && _row["row1"].ToString() != "")
|
||
// tabella.Rows.Add(_row["row1"], _row["row2"], _row["row3"], _row["row4"], _row["row5"]);
|
||
// }
|
||
|
||
// foreach (var column in tabella.Columns.Cast<DataColumn>().ToArray())
|
||
// if (tabella.AsEnumerable().All(dr => dr.IsNull(column)))
|
||
// tabella.Columns.Remove(column);
|
||
|
||
// AddElement(new ResetterYPDF());
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 410, 300) { AutoIncrementYWritable = true, FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// TablePDF table = new TablePDF(410, tabella)
|
||
// {
|
||
// Style = Style.Immobiliare,
|
||
// AlternateRow = false,
|
||
// HeaderHeight = 25,
|
||
// RowHeight = 10,
|
||
// Footer = false,
|
||
// ShowBorderLastLine = true,
|
||
// HeaderTextVerticalAlign = VerticalAlignmentType.Basso
|
||
// };
|
||
// for (int idColumn = 1; idColumn <= tabella.Columns.Count; idColumn++)
|
||
// table.Columns.Add(new ColumnPDF(tabella.Rows[0].Field<string>("column" + idColumn), idColumn == 1 ? 180 : 80, idColumn != 1 ? HorizontalAlignmentType.Centrato : HorizontalAlignmentType.Sinistra, false, false, 7, ColumnType.Testo, "column" + idColumn, columnName[idColumn - 1]) { HeaderFontColor = new ColorPDF(92, 89, 81), HeaderFontSize = 7, DeltaYContent = 1 });
|
||
|
||
|
||
// if (getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]).Length > 0)
|
||
// notaTabella = new FormattedTextAreaPDF(getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]), 410, table.Width - 10) { AutoIncrementYWritable = true, FontSize = 7, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify, DeltaX = 5, DeltaY = 5 };
|
||
|
||
// AddElement(new ResetterYPDF(47));
|
||
// AddElement(testoTitolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(table);
|
||
// if (getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]).Length > 0)
|
||
// AddElement(notaTabella);
|
||
// AddElement(new SpacePDF(15));
|
||
// }
|
||
// }
|
||
// }
|
||
// j++;
|
||
|
||
// break;
|
||
|
||
// case 2:
|
||
// AddElement(new PagePDF(PagePDF.PagePDFType.Generic));
|
||
// AddElement(new SpacePDF(45));
|
||
// int element = 0;
|
||
// foreach (var row in testo)
|
||
// {
|
||
// paragrafoSx = paragrafoDx = "";
|
||
// element++;
|
||
// titolo = row.Field<string>("titolo") + "<br>";
|
||
// if (row["posizione"].Equals("L"))
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
// else
|
||
// testoTitolo = new FormattedTextAreaPDF(titolo, 410, width + 15) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
|
||
// x1Linea = row["posizione"].Equals("L") ? 35 : 410;
|
||
// //x2Linea = row["posizione"].Equals("L") ? 340 : 765;
|
||
// x2Linea = row["posizione"].Equals("L") ? 340 : 750;
|
||
// var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = element > 2 ? false : true };
|
||
|
||
// for (int i = 1; i <= 15; i++)
|
||
// if (row["posizione"].Equals("L"))
|
||
// paragrafoSx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
// else
|
||
// paragrafoDx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
|
||
// if (row["posizione"].Equals("L"))
|
||
// testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { AutoIncrementYWritable = false, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// else
|
||
// //testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width + 10) { AutoIncrementYWritable = true, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
// testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width) { AutoIncrementYWritable = true, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
|
||
// if (element <= 2)
|
||
// {
|
||
// AddElement(new ResetterYPDF());
|
||
// AddElement(new SpacePDF(45));
|
||
// }
|
||
|
||
// if (element == 3)
|
||
// AddElement(new SpacePDF(6));
|
||
|
||
// if (element == 4)
|
||
// AddElement(new SpacePDF(-36));
|
||
|
||
// AddElement(testoTitolo);
|
||
// AddElement(new SpacePDF(5));
|
||
// AddElement(lineaVerticaleSeparazione);
|
||
// //AddElement(new SpacePDF(5));
|
||
// AddElement(new SpacePDF(1));
|
||
// AddElement(row["posizione"].Equals("L") ? testoSx : testoDx);
|
||
// AddElement(new SpacePDF(10));
|
||
// }
|
||
// break;
|
||
// }
|
||
//}
|
||
#endregion
|
||
|
||
|
||
#region Text
|
||
|
||
if (_text.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).Count() > 0)
|
||
{
|
||
var testo = _text.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList();
|
||
|
||
switch (j)
|
||
{
|
||
case 1:
|
||
AddElement(new SpacePDF(30));
|
||
foreach (var row in testo)
|
||
{
|
||
paragrafoSx = paragrafoDx = "";
|
||
titolo = row.Field<string>("titolo") + "<br>";
|
||
|
||
for (int i = 1; i <= 15; i++)
|
||
paragrafoSx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
|
||
// SPLIT PARAGRAFO
|
||
if (paragrafoSx.Contains("SPLITPARAGRAPH"))
|
||
{
|
||
var listaSplit = StringExtensions.SplitAtOccurence(paragrafoSx, "SPLITPARAGRAPH", 1);
|
||
paragrafoSx = listaSplit[0] + "</p>";
|
||
paragrafoDx += "<p>";
|
||
listaSplit.RemoveRange(0, 1);
|
||
foreach (var stringa in listaSplit)
|
||
paragrafoDx += stringa;
|
||
|
||
testoTitolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
x1Linea = 35;
|
||
x2Linea = 750;
|
||
var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = true };
|
||
var _titolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { AutoIncrementYWritable = false, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width) { FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
|
||
// Dati Statici 20181005
|
||
//AddElement(new SpacePDF(15));
|
||
//AddElement(_titolo);
|
||
//AddElement(new SpacePDF(5));
|
||
//AddElement(lineaVerticaleSeparazione);
|
||
//AddElement(new SpacePDF(10));
|
||
//AddElement(testoSx);
|
||
//AddElement(new SpacePDF(-5));
|
||
//AddElement(testoDx);
|
||
//AddElement(new SpacePDF(10));
|
||
|
||
AddElement(_titolo);
|
||
AddElement(new SpacePDF(5));
|
||
AddElement(lineaVerticaleSeparazione);
|
||
AddElement(new SpacePDF(10));
|
||
AddElement(testoSx);
|
||
AddElement(new SpacePDF(-5));
|
||
AddElement(testoDx);
|
||
AddElement(new SpacePDF(-5));
|
||
// End
|
||
|
||
}
|
||
|
||
else
|
||
{
|
||
testoTitolo = new FormattedTextAreaPDF(titolo, 35, 40 + (600 / 2)) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
x1Linea = 35;
|
||
x2Linea = 40 + (600 / 2) + 35;
|
||
var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = true };
|
||
testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
AddElement(testoTitolo);
|
||
AddElement(new SpacePDF(5));
|
||
AddElement(lineaVerticaleSeparazione);
|
||
AddElement(new SpacePDF(5));
|
||
AddElement(testoSx);
|
||
AddElement(new SpacePDF(10));
|
||
|
||
if (data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice
|
||
&& x.Field<string>("row1") != "").Count() > 0)
|
||
{
|
||
DataTable tabella = new DataTable();
|
||
|
||
for (int index = 1; index <= 5; index++)
|
||
tabella.Columns.Add("column" + index);
|
||
|
||
List<string> columnName = new List<string>();
|
||
for (int index = 1; index <= 5; index++)
|
||
columnName.Add(data.Rows[0].Field<string>("column" + index));
|
||
columnName.RemoveAll(item => item == null);
|
||
|
||
foreach (var _row in data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice))
|
||
{
|
||
titolo = "<br>" + _row.Field<string>("descrizione");
|
||
|
||
if (_row["row1"] != null && _row["row1"].ToString() != "")
|
||
tabella.Rows.Add(_row["row1"], _row["row2"], _row["row3"], _row["row4"], _row["row5"]);
|
||
}
|
||
|
||
foreach (var column in tabella.Columns.Cast<DataColumn>().ToArray())
|
||
if (tabella.AsEnumerable().All(dr => dr.IsNull(column)))
|
||
tabella.Columns.Remove(column);
|
||
|
||
AddElement(new ResetterYPDF());
|
||
testoTitolo = new FormattedTextAreaPDF(titolo, 410, 300) { AutoIncrementYWritable = true, FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
TablePDF table = new TablePDF(410, tabella)
|
||
{
|
||
Style = Style.Immobiliare,
|
||
AlternateRow = false,
|
||
HeaderHeight = 25,
|
||
RowHeight = 10,
|
||
Footer = false,
|
||
ShowBorderLastLine = true,
|
||
HeaderTextVerticalAlign = VerticalAlignmentType.Basso
|
||
};
|
||
for (int idColumn = 1; idColumn <= tabella.Columns.Count; idColumn++)
|
||
table.Columns.Add(new ColumnPDF(tabella.Rows[0].Field<string>("column" + idColumn), idColumn == 1 ? 190 : 80, idColumn != 1 ? HorizontalAlignmentType.Centrato : HorizontalAlignmentType.Sinistra, false, false, 8, ColumnType.Testo, "column" + idColumn, columnName[idColumn - 1]) { HeaderFontColor = new ColorPDF(92, 89, 81), HeaderFontSize = 8, DeltaYContent = 1 });
|
||
|
||
|
||
if (getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]).Length > 0)
|
||
notaTabella = new FormattedTextAreaPDF(getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]), 410, table.Width - 10) { AutoIncrementYWritable = true, FontSize = 7, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify, DeltaX = 5, DeltaY = 5 };
|
||
|
||
//AddElement(new ResetterYPDF(47));
|
||
AddElement(new ResetterYPDF(30));
|
||
AddElement(testoTitolo);
|
||
AddElement(new SpacePDF(5));
|
||
AddElement(table);
|
||
if (getNota(data.AsEnumerable().Where(x => x.Field<int>("idREP_IMM_MON_Pagina") == indice).ToList()[0]).Length > 0)
|
||
AddElement(notaTabella);
|
||
AddElement(new SpacePDF(15));
|
||
}
|
||
}
|
||
}
|
||
j++;
|
||
|
||
break;
|
||
|
||
case 2:
|
||
AddElement(new PagePDF(PagePDF.PagePDFType.Generic));
|
||
int element = 0;
|
||
foreach (var row in testo)
|
||
{
|
||
paragrafoSx = paragrafoDx = "";
|
||
element++;
|
||
titolo = row.Field<string>("titolo") + "<br>";
|
||
if (row["posizione"].Equals("L"))
|
||
testoTitolo = new FormattedTextAreaPDF(titolo, 35, width) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
else
|
||
testoTitolo = new FormattedTextAreaPDF(titolo, 410, width + 15) { FontSize = 13, FontColor = ColorPDF.Immobiliare_Grigio_TitoloPiccolo, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Left };
|
||
|
||
//x1Linea = row["posizione"].Equals("L") ? 35 : 410;
|
||
////x2Linea = row["posizione"].Equals("L") ? 340 : 765;
|
||
//x2Linea = row["posizione"].Equals("L") ? 340 : 750;
|
||
|
||
x1Linea = row["posizione"].Equals("L") ? 35 : 410;
|
||
x2Linea = row["posizione"].Equals("L") ? 375 : 750;
|
||
|
||
var lineaVerticaleSeparazione = new LinePDF(x1Linea, x2Linea, 0.5F, ColorPDF.Immobiliare_Grigio_TitoloPiccolo) { AutoIncrementYWritable = element > 2 ? false : true };
|
||
|
||
for (int i = 1; i <= 15; i++)
|
||
if (row["posizione"].Equals("L"))
|
||
paragrafoSx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
else
|
||
paragrafoDx += row.Field<string>("testo" + i) != null ? "<p>" + row.Field<string>("testo" + i) + "</p><br>" : "";
|
||
|
||
if (row["posizione"].Equals("L"))
|
||
testoSx = new FormattedTextAreaPDF(paragrafoSx, 35, width) { AutoIncrementYWritable = false, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
else
|
||
//testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width + 10) { AutoIncrementYWritable = true, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
testoDx = new FormattedTextAreaPDF(paragrafoDx, 410, width) { AutoIncrementYWritable = true, FontSize = 9, FontColor = ColorPDF.Immobiliare_Grigio_TestoStandard, TextHorizontalAlign = ceTe.DynamicPDF.TextAlign.Justify };
|
||
|
||
if (element <= 2)
|
||
{
|
||
AddElement(new ResetterYPDF());
|
||
//AddElement(new SpacePDF(45));
|
||
AddElement(new SpacePDF(30));
|
||
}
|
||
|
||
if (element == 3)
|
||
AddElement(new SpacePDF(-5));
|
||
|
||
if (element == 4)
|
||
AddElement(new SpacePDF(-32));
|
||
|
||
AddElement(testoTitolo);
|
||
AddElement(new SpacePDF(5));
|
||
AddElement(lineaVerticaleSeparazione);
|
||
//AddElement(new SpacePDF(5));
|
||
//AddElement(row["posizione"].Equals("L") ? testoSx : testoDx);
|
||
//AddElement(new SpacePDF(10));
|
||
AddElement(new SpacePDF(1));
|
||
AddElement(row["posizione"].Equals("L") ? testoSx : testoDx);
|
||
AddElement(new SpacePDF(10));
|
||
|
||
}
|
||
break;
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// Recupera i dati necessari alla Section restituendo un DataTable.
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
protected override DataTable GetDataTable()
|
||
{
|
||
return null;
|
||
}
|
||
|
||
public virtual string getNota(DataRow row)
|
||
{
|
||
string nota = "";
|
||
|
||
for (int i = 1; i <= 3; i++)
|
||
nota += "<p>" + row["notaGrafico" + i] + "<br>";
|
||
if (nota != "")
|
||
nota += "</p>";
|
||
|
||
return nota;
|
||
}
|
||
|
||
/// <summary>
|
||
/// Recupera i dati necessari alla Section restituendo un DataSet.
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
protected override DataSet GetDataSet()
|
||
{
|
||
var parametri = new List<Parametro>
|
||
{
|
||
new Parametro
|
||
{
|
||
Direction = ParameterDirection.Input,
|
||
DbType = DbType.Int32,
|
||
ParameterName = "IdReport",
|
||
//Value = EnvironmentFacade.ReportEnvironment.ReportId
|
||
// Impostato a -1 per prendere quello dei Report Monitoraggio Immobiliare
|
||
Value = EnvironmentFacade.ReportEnvironment.ReportId - 1
|
||
},
|
||
new Parametro
|
||
{
|
||
Direction = ParameterDirection.Input,
|
||
DbType = DbType.Int32,
|
||
ParameterName = "IdSezione",
|
||
Value = IdSection
|
||
}
|
||
};
|
||
return DataAccess.ExecuteDataSetStoredProcedure(DBProvider.SqlServerReportModeler, "REP_Monitoraggio_Immobiliare_S10_Legge_Bilancio", parametri);
|
||
}
|
||
}
|
||
|
||
|
||
}
|