using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using fatd_faturamento.DAL.Persistencia;
using fatd_faturamento.BLL.RegraNegocio;
using fatd_faturamento.ENTIDADE;

namespace fatd_faturamento.BLL.Repositorio
{
    public class repositorioLeiturista
    {

        public void Insert(entidadeLeiturista objLeiturista)
        {
            dalLeiturista dalLeiturista = null;

            try
            {
                dalLeiturista = new dalLeiturista();

                dalLeiturista.Insert(objLeiturista);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public void Update(entidadeLeiturista objLeiturista)
        {
            dalLeiturista dalLeiturista = null;

            try
            {
                dalLeiturista = new dalLeiturista();

                dalLeiturista.Update(objLeiturista);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public void Delete(entidadeLeiturista objLeiturista)
        {
            dalLeiturista dalLeiturista = null;

            try
            {
                dalLeiturista = new dalLeiturista();

                dalLeiturista.Delete(objLeiturista);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeLeiturista> Select(entidadeLeiturista objLeiturista)
        {
            dalLeiturista dalLeiturista = null;

            var lstLeiturista = new List<entidadeLeiturista>();

            regraNegocioGlobal regranegocioGlobal = null;

            DataTable dt = null;

            try
            {
                dalLeiturista = new dalLeiturista();
                dt = dalLeiturista.Select(objLeiturista);

                regranegocioGlobal = new regraNegocioGlobal();

                lstLeiturista = regraNegocioGlobal.ConvertDataTable<entidadeLeiturista>(dt);

                return lstLeiturista;
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeLeiturista> Select_1(entidadeLeiturista objLeiturista)
        {
            dalLeiturista dalLeiturista = null;

            var lstLeiturista = new List<entidadeLeiturista>();

            regraNegocioGlobal regranegocioGlobal = null;

            DataTable dt = null;

            try
            {
                dalLeiturista = new dalLeiturista();
                dt = dalLeiturista.Select_1(objLeiturista);

                regranegocioGlobal = new regraNegocioGlobal();

                lstLeiturista = regraNegocioGlobal.ConvertDataTable<entidadeLeiturista>(dt);

                return lstLeiturista;
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeLeiturista> Select_2(entidadeLeiturista objLeiturista)
        {
            dalLeiturista dalLeiturista = null;

            var lstLeiturista = new List<entidadeLeiturista>();

            regraNegocioGlobal regranegocioGlobal = null;

            DataTable dt = null;

            try
            {
                dalLeiturista = new dalLeiturista();
                dt = dalLeiturista.Select_2(objLeiturista);

                regranegocioGlobal = new regraNegocioGlobal();

                lstLeiturista = regraNegocioGlobal.ConvertDataTable<entidadeLeiturista>(dt);

                return lstLeiturista;
            }
            catch (Exception)
            {
                throw;
            }
        }



    }
}
