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

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

                DataSetNotaFAI dsNotaFAI = new DataSetNotaFAI();

                /************************** Modifica Nota Dinamica 11-03-2021 - Pino *************************************************************/
                List<Parametro> ParameterStoredProcedureList = new List<Parametro>();

                Parametro param;
                param = new Parametro();
                param.ParameterName = "Rete";
                param.Value = dataThread.Rete;
                param.DbType = DbType.String;
                ParameterStoredProcedureList.Add(param);


                param = new Parametro();
                param.ParameterName = "CodiceFiscale";
                param.Value = dataThread.CodiceFiscale;
                param.DbType = DbType.String;
                ParameterStoredProcedureList.Add(param);

                DataTable dtFlagNota = SectionManager.GetDataTable("[C6StagingPeriodico].[ClienteProdottiFAI]", ParameterStoredProcedureList, dataThread.DataAccess);

                DataSetNotaFAI.FlagNotaFAIRow drFlagFAI;
                if (dtFlagNota.Rows.Count > 0)
                {
                    drFlagFAI = dsNotaFAI.FlagNotaFAI.NewFlagNotaFAIRow();
                    drFlagFAI["FlagFAI"] = dtFlagNota.Rows[0][0].ToString();
                    drFlagFAI["DataFAI"] = dtFlagNota.Rows[0][1].ToString();

                    dsNotaFAI.FlagNotaFAI.AddFlagNotaFAIRow(drFlagFAI);
                }
                /*********************************************************************************************************************************/

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