119 lines
4.2 KiB
C#
119 lines
4.2 KiB
C#
using System.Collections.Generic;
|
|
using System.Data;
|
|
|
|
namespace Consulenza.ReportModeler.Business.Base.Proposta
|
|
{
|
|
/// <summary>
|
|
/// Classe di business per che si interfaccia con il database di ConsulenzaBase
|
|
/// e che si occupa di recuperare le informazioni legate alla logica di modellazione del report (ReportModeler).
|
|
/// </summary>
|
|
public class ReportStructBusiness
|
|
{
|
|
/// <summary>
|
|
/// Recupera l'id del report.
|
|
/// E' definito a livello di database. Campo ID di [ReportModeler2].[dbo].[Report]
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public int GetIdReport()
|
|
{
|
|
return 1;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Recupera l'id del modello in funzione dello stato di adeguatezza della proposta.
|
|
/// L'id del modello per il report di Proposta di ConsulenzaBase è determinato dallo stato di adeguatezza della proposta il cui id è passato in input.
|
|
/// Eseguendo la stored "REP_CheckStatoProposta_Adeguata" avrò idmodello = 1 per la proposta in stato "ADEGUATA", idmodello = 2 per proposta "NON ADEGUATA".
|
|
/// </summary>
|
|
/// <param name="chiaveCliente">chiave del cliente (ChiaveClientePB)</param>
|
|
/// <param name="chiaveProposta">chiave della proposta</param>
|
|
/// <returns></returns>
|
|
public int GetIdModel(long chiaveCliente, int chiaveProposta, bool unica)
|
|
{
|
|
int idModel;
|
|
var parametri = new List<Parametro>();
|
|
|
|
#region Definizione dei parametri
|
|
parametri.Clear();
|
|
|
|
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 = "ChiaveProposta",
|
|
Value = chiaveProposta
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
#endregion
|
|
|
|
var dtEsitoAdeguatezza = unica ? DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_CheckStatoProposta_Adeguata", parametri)
|
|
: DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaBase, "REP_CheckStatoProposta_Adeguata", parametri);
|
|
|
|
var codice = dtEsitoAdeguatezza.Rows[0]["STATO_ADEGUATEZZA"].ToString();
|
|
|
|
if (!codice.Equals(string.Empty))
|
|
{
|
|
idModel = codice.Equals("ADEGUATA") ? 1 : 2;
|
|
}
|
|
else
|
|
{
|
|
idModel = 2; // Fisso definito a livello database
|
|
}
|
|
|
|
return idModel;
|
|
}
|
|
public int GetIdModelBaseUnica(long chiaveCliente, int chiaveProposta)
|
|
{
|
|
int idModel;
|
|
var parametri = new List<Parametro>();
|
|
|
|
#region Definizione dei parametri
|
|
parametri.Clear();
|
|
|
|
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 = "ChiaveProposta",
|
|
Value = chiaveProposta
|
|
};
|
|
parametri.Add(parametro);
|
|
|
|
#endregion
|
|
|
|
var dtEsitoAdeguatezza = DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerConsulenzaUnica, "REP_CheckStatoProposta_Adeguata", parametri);
|
|
|
|
var codice = dtEsitoAdeguatezza.Rows[0]["STATO_ADEGUATEZZA"].ToString();
|
|
|
|
if (!codice.Equals(string.Empty))
|
|
{
|
|
idModel = codice.Equals("ADEGUATA") ? 1 : 2;
|
|
}
|
|
else
|
|
{
|
|
idModel = 2; // Fisso definito a livello database
|
|
}
|
|
|
|
return idModel;
|
|
}
|
|
}
|
|
}
|