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

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

                FormatNum num = new FormatNum();
                DataTable dt = SectionManager.GetDataSection(tabelleSessione, querySql, dataThread);



                for (int r = 0; r < dt.Rows.Count; r++)
                {
                    DataRow dr = ds333.Protetti.NewRow();
                    dr["DES_PROD"] = dt.Rows[r]["DES_PROD"].ToString();
                    dr["COD_CONF"] = dt.Rows[r]["COD_CONF"].ToString();
                    //dr["QUOTA"] = num.ConvertNum(dt.Rows[r]["QUOTA"].ToString());
                    dr["QUOTA"] = Convert.ToDecimal(dt.Rows[r]["QUOTA"].ToString()).ToString("#,##0.000");
                    //dr["NUMEROQUOTE"] = num.ConvertNum(dt.Rows[r]["NUMEROQUOTE"].ToString());
                    dr["NUMEROQUOTE"] = Convert.ToDecimal(dt.Rows[r]["NUMEROQUOTE"].ToString()).ToString("#,##0.000");
                    dr["CONTROVALORE"] = num.ConvertNum(dt.Rows[r]["CONTROVALORE"].ToString());
                    dr["DATARIF"] = dt.Rows[r]["DATARIF"].ToString().Substring(0, 10);
                    dr["DES_MAX"] = dt.Rows[r]["DES_MAX"].ToString();
                    dr["QUOTA_MAX"] = dt.Rows[r]["QUOTA_MAX"].ToString();
                    dr["QUOTA_MAX_PERC"] = dt.Rows[r]["QUOTA_MAX_PERC"].ToString();
                    dr["DATARIF_MAX"] = dt.Rows[r]["DATARIF_MAX"].ToString().Substring(0, 10);
                    dr["DES_PROT"] = dt.Rows[r]["DES_PROT"].ToString();
                    //dr["QUOTA_PROT"] = num.ConvertNum(dt.Rows[r]["QUOTA_PROT"].ToString());
                    dr["QUOTA_PROT"] = Convert.ToDecimal(dt.Rows[r]["QUOTA_PROT"].ToString()).ToString("#,##0.000");
                    //dr["NUMEROQUOTE_PROT"] = num.ConvertNum(dt.Rows[r]["NUMEROQUOTE_PROT"].ToString());
                    dr["NUMEROQUOTE_PROT"] = Convert.ToDecimal(dt.Rows[r]["NUMEROQUOTE_PROT"].ToString()).ToString("#,##0.000");
                    dr["CONTROVALORE_PROT"] = num.ConvertNum(dt.Rows[r]["CONTROVALORE_PROT"].ToString());
                    ds333.Protetti.Rows.Add(dr);
                }




                dsr.DatiSezione = ds333;
                dsr.Esito = ds333.Protetti.Count;

             
                return dsr;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
}