using System; using System.Collections.Generic; using System.Text; using System.Data; namespace PDFGenerator.BusinessLayer.DataSection { class DSS176EvoluzioneLineaProtettaMultiramo : IDataSection { private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger(); #region IDataSection Members public DataSectionResult getDataSection(List tabelleSessione, string querySql, DataThread dataThread) { /*** TEST - Verifica Tempistica 09/11/2023 - Pino ****/ /*** Inserimento log per verifica tempistica della sezione ***/ //DateTimeOffset dateOffsetValueIni = DateTimeOffset.Parse(DateTime.Now.ToString("hh:mm:ss.ffff")); /*************************************************************/ DataSectionResult dsr = new DataSectionResult(); querySql = "[C6martPeriodico].[PL_MP_S176EvoluzioneLineaProtettaMultiramo]"; //// Controllo presenza dati needarea/progetto vincolo S83 //DataTable dtDatiComuniPerformanceAreaS83 = SectionManager.GetDataSection("DatiComuniPerformanceAreaS83", datiMonitoraggio.DsParam); // S176 Monitoraggio Investimento DataTable dt = SectionManager.GetDataSection(tabelleSessione, querySql, dataThread); DataSetS176 ds176 = new DataSetS176(); DataRow dr; DateTime data; #region Prodotto if (dt.Rows.Count > 0) { DataRow drProdotto = ds176.Prodotto.NewRow(); drProdotto["DescrizioneProdotto"] = dt.Rows[0]["DescrizioneProdotto"].ToString(); drProdotto["Contratto"] = dt.Rows[0]["Contratto"].ToString(); data = Convert.ToDateTime(dt.Rows[0]["DataSottoscrizione"]); drProdotto["DataSottoscrizione"] = data.ToShortDateString(); ds176.Prodotto.Rows.Add(drProdotto); #endregion foreach (DataRow row in dt.Rows) { dr = ds176.DatiGrafico.NewRow(); dr["Controvalore"] = row["Controvalore"]; dr["ControvaloreProtetto"] = row["ControvaloreProtetto"]; dr["ControvaloreMonitorato"] = row["ControvaloreMonitorato"]; data = Convert.ToDateTime(row["DataRiferimento"]); dr["DataRiferimento"] = data.ToShortDateString(); data = Convert.ToDateTime(row["DataTrim"]); dr["DataTrim"] = data.ToShortDateString(); ds176.DatiGrafico.Rows.Add(dr); } } dsr.DatiSezione = ds176; //Se non sono passati almeno 5 giri di calcolo del rendimento, l’oggetto non deve essere mostrato DataView view = new DataView(ds176.DatiGrafico); DataTable dtFilter = view.ToTable(true, "DataRiferimento"); int esito = 0; //if (dtFilter.Rows.Count < 5) // esito = 0; //else esito = ds176.Prodotto.Rows.Count; dsr.Esito = esito; /*** TEST - Verifica Tempistica 09/11/2023 - Pino ****/ /*** Inserimento log per verifica tempistica della sezione ***/ //DateTimeOffset dateOffsetValueFin = DateTimeOffset.Parse(DateTime.Now.ToString("hh:mm:ss.ffff")); //var tDiff = string.Concat("Tempo di Esecuzione: {0} ", (dateOffsetValueFin - dateOffsetValueIni).ToString()); //logger.Trace("DSS176EvoluzioneLineaProtettaMultiramo " + tDiff); /*************************************************************/ return dsr; } #endregion } }