317 lines
14 KiB
C#
317 lines
14 KiB
C#
using System.Collections.Generic;
|
|
using Consulenza.ReportCommon;
|
|
using System.Data;
|
|
using System;
|
|
|
|
namespace Consulenza.Base.Business
|
|
{
|
|
//17-07-2015 modifica al visual studio 2013 linda fabiani: modificato il file proj
|
|
// test checkin da vs 2010
|
|
public static class DataService
|
|
{
|
|
/// <summary>
|
|
/// Salva il pdf del report passato in input nel database.
|
|
/// Esegue la stored "WritePDFintoDB".
|
|
/// Torna true o false a seconda se l'inserimento è andato a buon fine o meno.
|
|
/// </summary>
|
|
/// <param name="chiaveCliente">Chiave del cliente.</param>
|
|
/// <param name="chiaveReport">Chiave del report(per il report di proposta passare la chiaveProposta).</param>
|
|
/// <param name="tipologiaReport">Tipologia per esteso del report.</param>
|
|
/// <param name="report">Stream dati del report da salvare.</param>
|
|
/// <returns></returns>
|
|
public static bool SalvaReport(long chiaveCliente, int chiaveReport, string tipologiaReport, byte[] report, bool unica)
|
|
{
|
|
#region Definizione dei parametri
|
|
|
|
var parametri = new List<Parametro>();
|
|
|
|
var parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.Int64,
|
|
ParameterName = "ChiaveClientePB",
|
|
Value = chiaveCliente
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.Int32,
|
|
ParameterName = "ChiaveReport",
|
|
Value = chiaveReport
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.AnsiString,
|
|
ParameterName = "TipologiaReport",
|
|
Value = tipologiaReport
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
parametro = new Parametro {ParameterName = "Report", DbType = DbType.Binary, Value = report};
|
|
parametri.Add(parametro);
|
|
|
|
#endregion
|
|
|
|
return unica ? DataAccess.ExecuteNonQueryStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "WritePDFintoDB", parametri) > -1
|
|
: DataAccess.ExecuteNonQueryStoredProcedure(DBProvider.SqlServerConsulenzaBase, "WritePDFintoDB", parametri) > -1;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Classe che fornisce metodi per il recupero di informazioni del cliente.
|
|
/// </summary>
|
|
public static class ClienteManager
|
|
{
|
|
/// <summary>
|
|
/// Recupera la chiave interna del cliente a partire dai parametri passati in input codiceRete e codiceFiscalePivaMandato eseguendo la stored REP_GETCHIAVECLIENTE.
|
|
/// </summary>
|
|
/// <param name="codiceRete">Codice della Rete cui il PB (Private Banker) è associato.</param>
|
|
/// <param name="codiceFiscale">Codice Fiscale</param>
|
|
/// <param name="partitaIva">Partita IVA</param>
|
|
/// <param name="codiceMandato">Codice Mandato(nel caso di una Fiduciaria)</param>
|
|
/// <returns></returns>
|
|
public static long RecuperaChiaveCliente(string codiceRete, string codiceFiscale, string partitaIva, string codiceMandato, bool unica)
|
|
{
|
|
var parametri = new List<Parametro>();
|
|
|
|
#region Definizione dei parametri
|
|
|
|
var parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.String,
|
|
ParameterName = "codiceRete",
|
|
Value = codiceRete
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.String,
|
|
ParameterName = "codiceFiscale",
|
|
Value = codiceFiscale
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.String,
|
|
ParameterName = "pIva",
|
|
Value = partitaIva
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.String,
|
|
ParameterName = "codiceMandato",
|
|
Value = codiceMandato
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
#endregion
|
|
|
|
var objReturn = unica ? DataAccess.ExecuteScalarStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_GETCHIAVECLIENTE", parametri)
|
|
: DataAccess.ExecuteScalarStoredProcedure(DBProvider.SqlServerConsulenzaBase, "REP_GETCHIAVECLIENTE", parametri);
|
|
|
|
|
|
if (objReturn != null)
|
|
//return (long)objReturn;
|
|
return Convert.ToInt64(objReturn);
|
|
|
|
return -1;
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// Recupera le informazioni relative al cliente la cui chiave è passata in input.
|
|
/// </summary>
|
|
/// <param name="chiaveCliente">Chiave del cliente</param>
|
|
/// <returns></returns>
|
|
public static Cliente RecuperaCliente(long chiaveCliente, bool unica)
|
|
{
|
|
List<Parametro> parametri = new List<Parametro>();
|
|
Parametro parametro;
|
|
|
|
Cliente cliente = new Cliente();
|
|
|
|
#region Definizione dei parametri
|
|
|
|
parametro = new Parametro();
|
|
parametro.Direction = ParameterDirection.Input;
|
|
parametro.DbType = DbType.Int64;
|
|
parametro.ParameterName = "chiaveClientePb";
|
|
parametro.Value = chiaveCliente;
|
|
parametri.Add(parametro);
|
|
|
|
#endregion
|
|
|
|
DataTable dt = unica ? DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_INFOCLIENTEPB", parametri)
|
|
: DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaBase, "REP_INFOCLIENTEPB", parametri);
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
cliente.Chiave = chiaveCliente;
|
|
cliente.CodiceFiscale = dt.Rows[0]["codFis"].ToString().ToUpper();
|
|
cliente.Nome = dt.Rows[0]["nome_cliente"].ToString().ToUpper();
|
|
cliente.Cognome = dt.Rows[0]["cognome_cliente"].ToString().ToUpper();
|
|
}
|
|
return cliente;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Classe che fornisce metodi per il recupero di informazioni del cliente.
|
|
/// </summary>
|
|
public static class PrivateBankerManager
|
|
{
|
|
/// <summary>
|
|
/// Recupera le informazioni relative al private banker a partire dalla chiave del cliente passata in input.
|
|
/// Nel caso in cui il pb recuperato è un livello TFA viene restituito il suo pb Manager, il cui codage è quello impostato nella proprietà CodiceManager.
|
|
/// </summary>
|
|
/// <param name="chiaveCliente">Chiave del cliente a partire dalla quale recuperare il private banker associato</param>
|
|
/// <returns></returns>
|
|
public static PrivateBanker RecuperaPrivateBanker(long chiaveCliente, bool unica)
|
|
{
|
|
var parametri = new List<Parametro>();
|
|
|
|
var privatebanker = new PrivateBanker();
|
|
|
|
#region Definizione dei parametri per REP_InfoClientePb
|
|
|
|
var parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.Int64,
|
|
ParameterName = "chiaveClientePb",
|
|
Value = chiaveCliente
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
#endregion
|
|
|
|
var dt = unica ? DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_InfoClientePb", parametri)
|
|
: DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaBase, "REP_InfoClientePb", parametri);
|
|
|
|
var livelloPb = dt.Rows[0]["livello_pb"] == DBNull.Value ? string.Empty : dt.Rows[0]["livello_pb"].ToString().ToUpper();
|
|
var codiceAgenteManager = dt.Rows[0]["codManager_pb"] == DBNull.Value ? string.Empty : dt.Rows[0]["codManager_pb"].ToString().ToUpper();
|
|
var codiceRete = dt.Rows[0]["rete"] == DBNull.Value ? string.Empty : dt.Rows[0]["rete"].ToString().ToUpper();
|
|
var codiceLivelloUtenteTfa = codiceRete.Equals("F") ? "TFA" : "APF";
|
|
|
|
if (livelloPb.ToUpper().Equals(codiceLivelloUtenteTfa))
|
|
{
|
|
#region Definizione dei parametri per REP_InfoClientePbByCodAge
|
|
parametri.Clear();
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.AnsiString,
|
|
ParameterName = "codage",
|
|
Value = codiceAgenteManager
|
|
};
|
|
var parametro2 = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.String,
|
|
ParameterName = "reteage",
|
|
Value = codiceRete
|
|
};
|
|
parametri.Add(parametro);
|
|
parametri.Add(parametro2);
|
|
|
|
#endregion
|
|
|
|
dt.Clear();
|
|
dt = unica ? DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_InfoClientePbByCodAge", parametri)
|
|
: DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaBase, "REP_InfoClientePbByCodAge", parametri);
|
|
}
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
privatebanker.Cap = dt.Rows[0]["cap"] == DBNull.Value ? string.Empty : dt.Rows[0]["cap"].ToString().ToUpper();
|
|
privatebanker.Citta = dt.Rows[0]["citta"] == DBNull.Value ? string.Empty : dt.Rows[0]["citta"].ToString().ToUpper();
|
|
privatebanker.Codice = dt.Rows[0]["codage"] == DBNull.Value ? string.Empty : dt.Rows[0]["codage"].ToString().ToUpper();
|
|
privatebanker.CodiceRete = dt.Rows[0]["rete"] == DBNull.Value ? string.Empty : dt.Rows[0]["rete"].ToString().ToUpper();
|
|
privatebanker.Indirizzo = dt.Rows[0]["indirizzo"] == DBNull.Value ? string.Empty : dt.Rows[0]["indirizzo"].ToString().ToUpper();
|
|
privatebanker.Nominativo = dt.Rows[0]["nominativo_pb"] == DBNull.Value ? string.Empty : dt.Rows[0]["nominativo_pb"].ToString().ToUpper();
|
|
privatebanker.NumeroCivico = dt.Rows[0]["numcivico"] == DBNull.Value ? string.Empty : dt.Rows[0]["numcivico"].ToString().ToUpper();
|
|
privatebanker.PrefissoTelefono = dt.Rows[0]["ptel"] == DBNull.Value ? string.Empty : dt.Rows[0]["ptel"].ToString().ToUpper();
|
|
privatebanker.Telefono = dt.Rows[0]["tel"] == DBNull.Value ? string.Empty : dt.Rows[0]["tel"].ToString().ToUpper();
|
|
privatebanker.Livello = dt.Rows[0]["livello_pb"] == DBNull.Value ? string.Empty : dt.Rows[0]["livello_pb"].ToString().ToUpper();
|
|
privatebanker.CodiceManager = dt.Rows[0]["codManager_pb"] == DBNull.Value ? string.Empty : dt.Rows[0]["codManager_pb"].ToString().ToUpper();
|
|
}
|
|
|
|
return privatebanker;
|
|
}
|
|
}
|
|
|
|
|
|
public static class PrivateDelegatoManarger
|
|
{
|
|
/// <summary>
|
|
/// Recupera le informazioni relative al private banker a partire dalla chiave del cliente passata in input.
|
|
/// Nel caso in cui il pb recuperato è un livello TFA viene restituito il suo pb Manager, il cui codage è quello impostato nella proprietà CodiceManager.
|
|
/// </summary>
|
|
/// <param name="chiaveCliente">Chiave del cliente a partire dalla quale recuperare il private banker associato</param>
|
|
/// <returns></returns>
|
|
public static Delegato RecuperaDelegato(int chiaveClientePB, int chiaveProposta,bool unica)
|
|
{
|
|
|
|
var parametri = new List<Parametro>();
|
|
Parametro parametro;
|
|
|
|
|
|
var privateDelegato = new Delegato();
|
|
|
|
#region Definizione dei parametri per REP_getDelegato
|
|
if (chiaveClientePB > 0 )
|
|
{
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.Int64,
|
|
ParameterName = "chiaveClientePB",
|
|
Value = chiaveClientePB
|
|
};
|
|
parametri.Add(parametro);
|
|
}
|
|
parametro = new Parametro
|
|
{
|
|
Direction = ParameterDirection.Input,
|
|
DbType = DbType.Int64,
|
|
ParameterName = "chiaveProposta",
|
|
Value = chiaveProposta
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
var dt = DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_getDelegatoProposta", parametri);
|
|
if ( dt.Rows.Count > 0 )
|
|
{
|
|
privateDelegato.chiaveDelegato = Convert.ToInt32(dt.Rows[0]["chiaveDelegato"].ToString());
|
|
privateDelegato.CodiceFiscale = dt.Rows[0]["codFis"].ToString().ToUpper();
|
|
privateDelegato.Nome = dt.Rows[0]["nomeDelegato"].ToString().ToUpper();
|
|
privateDelegato.Cognome = dt.Rows[0]["cognomeDelegato"].ToString().ToUpper();
|
|
}
|
|
|
|
|
|
|
|
return privateDelegato;
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|