using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;

namespace PDFGenerator.BusinessLayer.DataSection
{
    class DSS44OperazioniUltimoTrimestre : IDataSection
    {
        public DataSectionResult getDataSection(List<SessionStruct> tabelleSessione, string querySql, DataThread dataThread)
        {
            DataSectionResult dsr = new DataSectionResult();
            DataSetS44 dsS44 = new DataSetS44();

            try
            {
                DataTable dt = SectionManager.GetDataSection(tabelleSessione, querySql, dataThread);

                if (dt.Rows.Count > 0)
                {
                    DataSetS44.OperazioniUltimoTrimestreRow drDatiOperazioniUltimoTrimestre;
                    //drDatiOperazioniUltimoTrimestre = dsS44.OperazioniUltimoTrimestre.NewOperazioniUltimoTrimestreRow();
                    
                    foreach(var item in dt.AsEnumerable())
                    {
                        drDatiOperazioniUltimoTrimestre = dsS44.OperazioniUltimoTrimestre.NewOperazioniUltimoTrimestreRow();
                        drDatiOperazioniUltimoTrimestre.Descrizione = "Totale Operazioni Ultimo Trimestre";

                        drDatiOperazioniUltimoTrimestre.CodiceFiscale = item.Field<string>("CodiceFiscale");
                        drDatiOperazioniUltimoTrimestre.Rete = item.Field<string>("Rete");
                        drDatiOperazioniUltimoTrimestre.DataOperazione = item.Field<string>("DataOperazione");
                        drDatiOperazioniUltimoTrimestre.Contratto = item.Field<string>("Contratto");
                        drDatiOperazioniUltimoTrimestre.CodiceContratto = item.Field<string>("CodiceContratto");
                        drDatiOperazioniUltimoTrimestre.Descrizione = item.Field<string>("Descrizione");
                        drDatiOperazioniUltimoTrimestre.Importo = item.Field<decimal>("Importo");
                        drDatiOperazioniUltimoTrimestre.FirmaDigitale = item.Field<string>("Firma");

                        dsS44.OperazioniUltimoTrimestre.AddOperazioniUltimoTrimestreRow(drDatiOperazioniUltimoTrimestre);
                    }

                }


                dsr.DatiSezione = dsS44;
                dsr.Esito = dsS44.OperazioniUltimoTrimestre.Rows.Count;
                return dsr;
            }
            catch(Exception ex)
            {
                throw ex;
            }
        }
    }
}