166 lines
8.2 KiB
C#
166 lines
8.2 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 PDFGenerator.BusinessLayer.DataSection;
|
|
using PDFGenerator.BusinessLayer;
|
|
using System.Collections.Generic;
|
|
|
|
namespace PDFGenerator.BusinessLayer.DataSection
|
|
{
|
|
|
|
class DSS179EmittentiConcentrazioneAlta : IDataSection
|
|
{
|
|
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
|
|
|
|
|
//private int _experince;
|
|
//public int Experince
|
|
//{
|
|
// set
|
|
// {
|
|
// _experince = value;
|
|
// }
|
|
// get
|
|
// {
|
|
// return _experince;
|
|
// }
|
|
//}
|
|
|
|
public DSS179EmittentiConcentrazioneAlta()
|
|
{
|
|
//
|
|
// TODO: Add constructor logic here
|
|
//
|
|
}
|
|
#region IDataSection Members
|
|
|
|
/// <summary>
|
|
/// Implement the getDataSection function of the interface IDataSection.
|
|
/// </summary>
|
|
/// <param name="tabelleSessione"></param>
|
|
/// <param name="querySql"> Sql Statment to be executed to return the Profile Risk of the certain customer in a certain network</param>
|
|
/// <param name="dataThread"></param>
|
|
/// <returns> Data Table to be shown in the report</returns>
|
|
public DataSectionResult getDataSection(List<SessionStruct> tabelleSessione, string querySql, DataThread dataThread)
|
|
{
|
|
try
|
|
{
|
|
|
|
FormatNum num = new FormatNum();
|
|
|
|
DataSectionResult dsr = new DataSectionResult();
|
|
|
|
|
|
DataSetS179 ds179 = new DataSetS179();
|
|
|
|
// La sezione va stampata se non si verificano i seguenti 3 casi:
|
|
// Copertura = 0
|
|
|
|
string preQuerySql = dataThread.Periodico?"[C6MartPeriodico].[PL_D_S178CasiParticolari]": "[C6Mart].[PL_D_S178CasiParticolari]";
|
|
|
|
DataTable dtTestoKO = SectionManager.GetDataSection(tabelleSessione, preQuerySql, dataThread);
|
|
|
|
if (dtTestoKO.Rows.Count == 0)
|
|
{
|
|
DataTable dt = SectionManager.GetDataSection(tabelleSessione, querySql, dataThread);
|
|
|
|
DataRow drEmittente;
|
|
|
|
ds179.EmittentiConcentrazione.Columns.Add(new DataColumn("controvalore", typeof(string)));
|
|
ds179.EmittentiConcentrazione.Columns.Add(new DataColumn("franchigia", typeof(string)));
|
|
ds179.EmittentiConcentrazione.Columns.Add(new DataColumn("rating", typeof(string)));
|
|
ds179.EmittentiConcentrazione.Columns.Add(new DataColumn("concentrazione", typeof(string)));
|
|
ds179.EmittentiConcentrazione.Columns.Add(new DataColumn("limiteConcentrazione", typeof(string)));
|
|
|
|
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
foreach (DataRow r in dt.Rows)
|
|
{
|
|
drEmittente = ds179.EmittentiConcentrazione.NewRow();
|
|
drEmittente["Emittente"] = r["Emittente"].ToString();
|
|
//drEmittente["ObbligazioniControvalore"] = Convert.ToDecimal(r["ObbligazioniControvalore"]).ToString("#,##0.00");
|
|
//drEmittente["ObbligazioniConcentrazione"] = Convert.ToDecimal(r["ObbligazioniConcentrazione"]).ToString("#,##0.00");
|
|
//drEmittente["AzioniControvalore"] = Convert.ToDecimal(r["AzioniControvalore"]).ToString("#,##0.00");
|
|
//drEmittente["AzioniConcentrazione"] = Convert.ToDecimal(r["AzioniConcentrazione"]).ToString("#,##0.00");
|
|
|
|
//drEmittente["ObbligazioniControvalore"] = r["ObbligazioniControvalore"] == null ? "-" : Convert.ToDecimal(r["ObbligazioniControvalore"]).ToString("C", System.Globalization.CultureInfo.CurrentCulture);
|
|
//drEmittente["ObbligazioniConcentrazione"] = r["ObbligazioniConcentrazione"] == null ? "-" : Convert.ToDecimal(r["ObbligazioniConcentrazione"]).ToString("P", System.Globalization.CultureInfo.CurrentCulture);
|
|
//drEmittente["AzioniControvalore"] = r["AzioniControvalore"] == null ? "-" : Convert.ToDecimal(r["AzioniControvalore"]).ToString("C");
|
|
//drEmittente["AzioniConcentrazione"] = r["AzioniConcentrazione"] == null ? "-" : Convert.ToDecimal(r["AzioniConcentrazione"]).ToString("P2");
|
|
|
|
//drEmittente["ObbligazioniControvalore"] = num.ConvertNum(r["ObbligazioniControvalore"]);
|
|
//drEmittente["ObbligazioniConcentrazione"] = num.ConvertNum(r["ObbligazioniConcentrazione"]);
|
|
|
|
//drEmittente["AzioniControvalore"] = num.ConvertNum(r["AzioniControvalore"]);
|
|
//drEmittente["AzioniConcentrazione"] = num.ConvertNum(r["AzioniConcentrazione"]);
|
|
|
|
//--MIFID2 20180706 CR Napolitano i simboli € e % vanno nell'intestazione e non nelle celle
|
|
//drEmittente["ObbligazioniControvalore"] = string.IsNullOrEmpty(r["ObbligazioniControvalore"].ToString()) ? "-" : string.Concat(num.ConvertNum(r["ObbligazioniControvalore"]), " €");
|
|
//drEmittente["ObbligazioniConcentrazione"] = string.IsNullOrEmpty(r["ObbligazioniConcentrazione"].ToString()) ? "-" : string.Concat(num.ConvertNum(r["ObbligazioniConcentrazione"]), "%");
|
|
|
|
|
|
//drEmittente["AzioniControvalore"] = string.IsNullOrEmpty(r["AzioniControvalore"].ToString()) ? "-" : string.Concat(num.ConvertNum(r["AzioniControvalore"]), " €");
|
|
//drEmittente["AzioniConcentrazione"] = string.IsNullOrEmpty(r["AzioniConcentrazione"].ToString()) ? "-" : string.Concat(num.ConvertNum(r["AzioniConcentrazione"]), "%");
|
|
|
|
//Leone: modifiche fatte sulla base dei requisiti
|
|
//drEmittente["ObbligazioniControvalore"] = string.IsNullOrEmpty(r["ObbligazioniControvalore"].ToString()) ? "-" : num.ConvertNum(r["ObbligazioniControvalore"]);
|
|
//drEmittente["ObbligazioniConcentrazione"] = string.IsNullOrEmpty(r["ObbligazioniConcentrazione"].ToString()) ? "-" : num.ConvertNum(r["ObbligazioniConcentrazione"]);
|
|
|
|
|
|
//drEmittente["AzioniControvalore"] = string.IsNullOrEmpty(r["AzioniControvalore"].ToString()) ? "-" : num.ConvertNum(r["AzioniControvalore"]);
|
|
//drEmittente["AzioniConcentrazione"] = string.IsNullOrEmpty(r["AzioniConcentrazione"].ToString()) ? "-" : num.ConvertNum(r["AzioniConcentrazione"]);
|
|
|
|
drEmittente["controvalore"] = string.IsNullOrEmpty(r["ctv"].ToString()) ? "-" : num.ConvertNum(r["ctv"]);
|
|
drEmittente["franchigia"] = string.IsNullOrEmpty(r["franchigia"].ToString()) ? "-" : num.ConvertNum(r["franchigia"]);
|
|
drEmittente["rating"] = string.IsNullOrEmpty(r["rating"].ToString()) ? "-" : num.ConvertNum(r["rating"]);
|
|
drEmittente["concentrazione"] = string.IsNullOrEmpty(r["percConcentrazione"].ToString()) ? "-" : num.ConvertNum(r["percConcentrazione"]);
|
|
drEmittente["limiteConcentrazione"] = string.IsNullOrEmpty(r["sogliaConcentrazione"].ToString()) ? "-" : num.ConvertNum(r["sogliaConcentrazione"]);
|
|
|
|
|
|
//--MIFID2
|
|
|
|
|
|
|
|
|
|
ds179.EmittentiConcentrazione.Rows.Add(drEmittente);
|
|
}
|
|
}
|
|
}
|
|
|
|
dsr.DatiSezione = ds179;
|
|
|
|
int esito = 0;
|
|
|
|
//if (dtFilter.Rows.Count < 5)
|
|
// esito = 0;
|
|
//else
|
|
esito = ds179.EmittentiConcentrazione.Rows.Count;
|
|
|
|
dsr.Esito = esito;
|
|
return dsr;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
try
|
|
{
|
|
logger.Error(String.Concat(ex.Message, " ", dataThread.CodiceFiscale));
|
|
}
|
|
catch { }
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|