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

namespace fatd_faturamento.BLL.Repositorio
{
    public class repositorioMicrogeracaoConvenioSefaz
    {

        public void Insert(entidadeMicrogeracaoConvenioSefaz objMicrogeracaoConvenioSefaz)
        {
            dalMicrogeracaoConvenioSefaz dalMicrogeracaoConvenioSefaz = null;

            try
            {
                dalMicrogeracaoConvenioSefaz = new dalMicrogeracaoConvenioSefaz();

                dalMicrogeracaoConvenioSefaz.Insert(objMicrogeracaoConvenioSefaz);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public void Update(entidadeMicrogeracaoConvenioSefaz objMicrogeracaoConvenioSefaz)
        {
            dalMicrogeracaoConvenioSefaz dalMicrogeracaoConvenioSefaz = null;

            try
            {
                dalMicrogeracaoConvenioSefaz = new dalMicrogeracaoConvenioSefaz();

                dalMicrogeracaoConvenioSefaz.Update(objMicrogeracaoConvenioSefaz);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public void Update_1(entidadeMicrogeracaoConvenioSefaz objMicrogeracaoConvenioSefaz)
        {
            dalMicrogeracaoConvenioSefaz dalMicrogeracaoConvenioSefaz = null;

            try
            {
                dalMicrogeracaoConvenioSefaz = new dalMicrogeracaoConvenioSefaz();

                dalMicrogeracaoConvenioSefaz.Update_1(objMicrogeracaoConvenioSefaz);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public void Delete(entidadeMicrogeracaoConvenioSefaz objMicrogeracaoConvenioSefaz)
        {
            dalMicrogeracaoConvenioSefaz dalMicrogeracaoConvenioSefaz = null;

            try
            {
                dalMicrogeracaoConvenioSefaz = new dalMicrogeracaoConvenioSefaz();

                dalMicrogeracaoConvenioSefaz.Delete(objMicrogeracaoConvenioSefaz);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeMicrogeracaoConvenioSefaz> Select(entidadeMicrogeracaoConvenioSefaz objMicrogeracaoConvenioSefaz)
        {
            dalMicrogeracaoConvenioSefaz dalMicrogeracaoConvenioSefaz = null;

            var lstMicrogeracaoConvenioSefaz = new List<entidadeMicrogeracaoConvenioSefaz>();
            DataTable dt = null;

            try
            {
                dalMicrogeracaoConvenioSefaz = new dalMicrogeracaoConvenioSefaz();
                dt = dalMicrogeracaoConvenioSefaz.Select(objMicrogeracaoConvenioSefaz);

                foreach (DataRow dr in dt.Rows)
                {
                    objMicrogeracaoConvenioSefaz = new entidadeMicrogeracaoConvenioSefaz();


                    if (!Convert.IsDBNull(dr["ID"]))
                        objMicrogeracaoConvenioSefaz.ID = Convert.ToInt32(dr["ID"]);

                    if (!Convert.IsDBNull(dr["NUMERO_CONCESSAO"]))
                        objMicrogeracaoConvenioSefaz.NUMERO_CONCESSAO = dr["NUMERO_CONCESSAO"].ToString();

                    if (!Convert.IsDBNull(dr["NUMERO_BENEFICIO"]))
                        objMicrogeracaoConvenioSefaz.NUMERO_BENEFICIO = Convert.ToInt32(dr["NUMERO_BENEFICIO"]);

                    if (!Convert.IsDBNull(dr["DATA_PEDIDO"]))
                        objMicrogeracaoConvenioSefaz.DATA_PEDIDO = Convert.ToDateTime(dr["DATA_PEDIDO"]);

                    if (!Convert.IsDBNull(dr["VIGENCIA_INICIO"]))
                        objMicrogeracaoConvenioSefaz.VIGENCIA_INICIO = Convert.ToDateTime(dr["VIGENCIA_INICIO"]);

                    if (!Convert.IsDBNull(dr["VIGENCIA_FIM"]))
                        objMicrogeracaoConvenioSefaz.VIGENCIA_FIM = Convert.ToDateTime(dr["VIGENCIA_FIM"]);

                    if (!Convert.IsDBNull(dr["ATIVO"]))
                        objMicrogeracaoConvenioSefaz.ATIVO = Convert.ToInt32(dr["ATIVO"]);

                    if (!Convert.IsDBNull(dr["UNIDADE_CONSUMIDORA_SEFAZ"]))
                        objMicrogeracaoConvenioSefaz.UNIDADE_CONSUMIDORA_SEFAZ = dr["UNIDADE_CONSUMIDORA_SEFAZ"].ToString();

                    if (!Convert.IsDBNull(dr["GRUPO"]))
                        objMicrogeracaoConvenioSefaz.GRUPO = dr["GRUPO"].ToString();

                    if (!Convert.IsDBNull(dr["UNID_ID"]))
                        objMicrogeracaoConvenioSefaz.UNID_ID = Convert.ToInt32(dr["UNID_ID"]);

                    if (!Convert.IsDBNull(dr["ZONA"]))
                        objMicrogeracaoConvenioSefaz.ZONA = dr["ZONA"].ToString();

                    if (!Convert.IsDBNull(dr["LIVRO"]))
                        objMicrogeracaoConvenioSefaz.LIVRO = dr["LIVRO"].ToString();

                    if (!Convert.IsDBNull(dr["CONTA"]))
                        objMicrogeracaoConvenioSefaz.CONTA = dr["CONTA"].ToString();

                    if (!Convert.IsDBNull(dr["IDUSUARIOS"]))
                        objMicrogeracaoConvenioSefaz.IDUSUARIOS = Convert.ToInt32(dr["IDUSUARIOS"]);



                    lstMicrogeracaoConvenioSefaz.Add(objMicrogeracaoConvenioSefaz);
                }
                return lstMicrogeracaoConvenioSefaz;
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeMicrogeracaoConvenioSefaz> SelectMax(entidadeMicrogeracaoConvenioSefaz objMicrogeracaoConvenioSefaz)
        {
            dalMicrogeracaoConvenioSefaz dalMicrogeracaoConvenioSefaz = null;

            var lstMicrogeracaoConvenioSefaz = new List<entidadeMicrogeracaoConvenioSefaz>();
            DataTable dt = null;

            try
            {
                dalMicrogeracaoConvenioSefaz = new dalMicrogeracaoConvenioSefaz();
                dt = dalMicrogeracaoConvenioSefaz.SelectMax(objMicrogeracaoConvenioSefaz);

                foreach (DataRow dr in dt.Rows)
                {
                    objMicrogeracaoConvenioSefaz = new entidadeMicrogeracaoConvenioSefaz();

                    if (!Convert.IsDBNull(dr["ID"]))
                        objMicrogeracaoConvenioSefaz.ID = Convert.ToInt32(dr["ID"]);


                    lstMicrogeracaoConvenioSefaz.Add(objMicrogeracaoConvenioSefaz);
                }
                return lstMicrogeracaoConvenioSefaz;
            }
            catch (Exception)
            {
                throw;
            }
        }

    }
}
