97 lines
5.0 KiB
C#

using System;
using ceTe.DynamicPDF;
using Consulenza.ReportWriter.Business;
using Consulenza.ReportCommon;
using Consulenza.ReportWriter.Business.OBJ_PDF;
using System.Data;
using System.Collections.Generic;
namespace Consulenza.ReportWriter.Manager.Section.Immobiliare.Finalita
{
public class S1 : Entity.Section
{
public S1(EnvironmentFacade environmentFacade, int idSection)
: base(environmentFacade, idSection)
{
try
{
Draw();
}
catch (Exception ex)
{
SectionLogger.Write("S1", ex.Message, SectionLoggerMessageLevel.E, EnvironmentFacade.ReportEnvironment);
}
}
/// <summary>
/// Scheda1. (Copertina (Titolo, data di produzione del report e codice fiscale del cliente))
/// </summary>
protected override sealed void Draw()
{
var dati = GetDataSet();
var x = EnvironmentFacade.RendererFacade.XLeftLimit + 5;
var nomeCliente = Helper.CapitalizeWords(EnvironmentFacade.ReportEnvironment.Cliente.Nome);
var cognomeCliente = Helper.CapitalizeWords(EnvironmentFacade.ReportEnvironment.Cliente.Cognome);
var nomePrivateBanker = Helper.CapitalizeWords(EnvironmentFacade.ReportEnvironment.PrivateBanker.Nominativo);
// data di stampa
var dataStampa = new FormattedTextAreaPDF(string.Format("{0} {1}", "Report prodotto il", Helper.FormatDateMonthName(DateTime.Now)), x, 500) { FontSize = 7, Y = 525, AutoIncrementYWritable = false, AbsolutePosition = true };
var dataAggiornamentoCatastale = new FormattedTextAreaPDF(string.Format("({0} {1})", "dati catastali aggiornati al", Helper.FormatDateMonthName(Convert.ToDateTime(dati.Tables[0].Rows[0]["datarichiesta"]))), x, 500) { FontSize = 6, Y = 534, AutoIncrementYWritable = false, AbsolutePosition = true };
string labelCliente = EnvironmentFacade.ReportEnvironment.Cliente.Tipo == ClienteType.Fisico ? "Codice fiscale" : EnvironmentFacade.ReportEnvironment.Cliente.CodiceFiscale != string.Empty ? "Codice fiscale" : "Partita Iva";
string datoCliente = EnvironmentFacade.ReportEnvironment.Cliente.Tipo == ClienteType.Fisico ? EnvironmentFacade.ReportEnvironment.Cliente.CodiceFiscale : EnvironmentFacade.ReportEnvironment.Cliente.CodiceFiscale != string.Empty ? EnvironmentFacade.ReportEnvironment.Cliente.CodiceFiscale : EnvironmentFacade.ReportEnvironment.Cliente.PartitaIva;
// info del cliente
//var areaClienteNominativo = new FormattedTextAreaPDF(string.Format("{0} {1} {2}", "<B>Cliente:</B>", nomeCliente, cognomeCliente), x, 740, TextAlign.Right) { FontSize = 10, Y = 350, AutoIncrementYWritable = false };
//var areaClienteCodiceFiscale = new FormattedTextAreaPDF(string.Format("{0} {1}", "Codice fiscale", datoCliente), x, 740, TextAlign.Right) { FontSize = 10, Y = 366, AutoIncrementYWritable = false };
var areaClienteNominativo = new FormattedTextAreaPDF(string.Format("{0} {1} {2} {3}", "<B>Cliente:</B>", nomeCliente, cognomeCliente, " - " + datoCliente), x, 750, TextAlign.Right) { FontSize = 10, Y = 350, AutoIncrementYWritable = false };
// info del private banker
var areaPrivateBankerNominativo = new FormattedTextAreaPDF(string.Format("{0} {1}", "<B>Private Banker:</B>", nomePrivateBanker), x, 750, TextAlign.Right) { FontSize = 10, Y = 365, AutoIncrementYWritable = false };
// Aggiungo gli oggetti
AddElement(areaClienteNominativo);
//AddElement(areaClienteCodiceFiscale);
AddElement(areaPrivateBankerNominativo);
AddElement(dataStampa);
AddElement(dataAggiornamentoCatastale);
}
/// <summary>
/// Recupera i dati necessari alla Section restituendo un DataTable.
/// </summary>
/// <returns></returns>
protected sealed override DataTable GetDataTable()
{
return null;
}
/// <summary>
/// Recupera i dati necessari alla Section restituendo un DataSet.
/// </summary>
/// <returns></returns>
protected sealed override DataSet GetDataSet()
{
#region Definizione dei parametri
var parametri = new List<Parametro>
{
new Parametro
{
Direction = ParameterDirection.Input,
DbType = DbType.Int64,
ParameterName = "ChiaveClientePB",
Value = EnvironmentFacade.ReportEnvironment.Cliente.Chiave
}
};
#endregion
return EnvironmentFacade.ReportEnvironment.FinalitaImmobiliare.ImmobiliareCEUnica ? DataAccess.ExecuteDataSetStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_FinalitaImmobiliare_S1_Copertina", parametri)
: DataAccess.ExecuteDataSetStoredProcedure(DBProvider.SqlServerConsulenzaEvoluta, "REP_FinalitaImmobiliare_S1_Copertina", parametri);
}
}
}