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 repositorioRamalUnidadeConsumidora
    {

        public void Insert(entidadeRamalUnidadeConsumidora objRamalUnidadeConsumidora)
        {
            dalRamalUnidadeConsumidora dalRamalUnidadeConsumidora = null;

            try
            {
                dalRamalUnidadeConsumidora = new dalRamalUnidadeConsumidora();

                dalRamalUnidadeConsumidora.Insert(objRamalUnidadeConsumidora);
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeRamalUnidadeConsumidora> Select(entidadeRamalUnidadeConsumidora objRamalUnidadeConsumidora)
        {
            dalRamalUnidadeConsumidora dalRamalUnidadeConsumidora = null;

            var lstRamalUnidadeConsumidora = new List<entidadeRamalUnidadeConsumidora>();
            DataTable dt = null;

            try
            {
                dalRamalUnidadeConsumidora = new dalRamalUnidadeConsumidora();
                dt = dalRamalUnidadeConsumidora.Select(objRamalUnidadeConsumidora);

                foreach (DataRow dr in dt.Rows)
                {
                    objRamalUnidadeConsumidora = new entidadeRamalUnidadeConsumidora();
                    objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA = new entidadeUnidadeConsumidora();


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

                    if (!Convert.IsDBNull(dr["RAMAL_UNIDADE_CONSUMIDORA_IDUNIDADE_CONSUMIDORA"]))
                        objRamalUnidadeConsumidora.IDUNIDADE_CONSUMIDORA = Convert.ToInt32(dr["RAMAL_UNIDADE_CONSUMIDORA_IDUNIDADE_CONSUMIDORA"]);

                    if (!Convert.IsDBNull(dr["RAMAL_UNIDADE_CONSUMIDORA_IDRAMAL"]))
                        objRamalUnidadeConsumidora.IDRAMAL = Convert.ToInt32(dr["RAMAL_UNIDADE_CONSUMIDORA_IDRAMAL"]);

                    if (!Convert.IsDBNull(dr["RAMAL_UNIDADE_CONSUMIDORA_LANCAMENTO"]))
                        objRamalUnidadeConsumidora.LANCAMENTO = Convert.ToDateTime(dr["RAMAL_UNIDADE_CONSUMIDORA_LANCAMENTO"]);

                    if (!Convert.IsDBNull(dr["RAMAL_UNIDADE_CONSUMIDORA_IDTIPO_PADRAO_MEDICAO"]))
                        objRamalUnidadeConsumidora.IDTIPO_PADRAO_MEDICAO = Convert.ToInt32(dr["RAMAL_UNIDADE_CONSUMIDORA_IDTIPO_PADRAO_MEDICAO"]);

                    if (!Convert.IsDBNull(dr["RAMAL_UNIDADE_CONSUMIDORA_IDSITUACAO"]))
                        objRamalUnidadeConsumidora.IDSITUACAO = Convert.ToInt32(dr["RAMAL_UNIDADE_CONSUMIDORA_IDSITUACAO"]);

                    if (!Convert.IsDBNull(dr["RAMAL_UNIDADE_CONSUMIDORA_SITUACAO"]))
                        objRamalUnidadeConsumidora.SITUACAO = dr["RAMAL_UNIDADE_CONSUMIDORA_SITUACAO"].ToString();

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

                    if (!Convert.IsDBNull(dr["UNIDADE_CONSUMIDORA_ZONA"]))
                        objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA.ZONA = dr["UNIDADE_CONSUMIDORA_ZONA"].ToString();

                    if (!Convert.IsDBNull(dr["UNIDADE_CONSUMIDORA_LIVRO"]))
                        objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA.LIVRO = dr["UNIDADE_CONSUMIDORA_LIVRO"].ToString();

                    if (!Convert.IsDBNull(dr["UNIDADE_CONSUMIDORA_CONTA"]))
                        objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA.CONTA = dr["UNIDADE_CONSUMIDORA_CONTA"].ToString();

                    if (!Convert.IsDBNull(dr["UNIDADE_CONSUMIDORA_NOME"]))
                        objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA.NOME = dr["UNIDADE_CONSUMIDORA_NOME"].ToString();


                    lstRamalUnidadeConsumidora.Add(objRamalUnidadeConsumidora);
                }
                return lstRamalUnidadeConsumidora;
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeRamalUnidadeConsumidora> Select_1(entidadeRamalUnidadeConsumidora objRamalUnidadeConsumidora)
        {
            dalRamalUnidadeConsumidora dalRamalUnidadeConsumidora = null;

            var lstRamalUnidadeConsumidora = new List<entidadeRamalUnidadeConsumidora>();
            DataTable dt = null;

            try
            {
                dalRamalUnidadeConsumidora = new dalRamalUnidadeConsumidora();
                dt = dalRamalUnidadeConsumidora.Select_1(objRamalUnidadeConsumidora);

                foreach (DataRow dr in dt.Rows)
                {
                    objRamalUnidadeConsumidora = new entidadeRamalUnidadeConsumidora();
                    objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA = new entidadeUnidadeConsumidora();

                   
                    if (!Convert.IsDBNull(dr["IDSITUACAO"]))
                        objRamalUnidadeConsumidora.IDSITUACAO = Convert.ToInt32(dr["IDSITUACAO"]);

 
                    lstRamalUnidadeConsumidora.Add(objRamalUnidadeConsumidora);
                }
                return lstRamalUnidadeConsumidora;
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeRamalUnidadeConsumidora> SelectOthersTables(entidadeRamalUnidadeConsumidora objRamalUnidadeConsumidora)
        {
            dalRamalUnidadeConsumidora dalRamalUnidadeConsumidora = null;

            var lstRamalUnidadeConsumidora = new List<entidadeRamalUnidadeConsumidora>();
            DataTable dt = null;

            try
            {
                dalRamalUnidadeConsumidora = new dalRamalUnidadeConsumidora();
                dt = dalRamalUnidadeConsumidora.SelectOthersTables(objRamalUnidadeConsumidora);

                foreach (DataRow dr in dt.Rows)
                {
                    objRamalUnidadeConsumidora = new entidadeRamalUnidadeConsumidora();
                    objRamalUnidadeConsumidora.entidadeUNIDADECONSUMIDORA = new entidadeUnidadeConsumidora();


                    if (!Convert.IsDBNull(dr["IDRAMAL"]))
                        objRamalUnidadeConsumidora.IDRAMAL = Convert.ToInt32(dr["IDRAMAL"]);


                    lstRamalUnidadeConsumidora.Add(objRamalUnidadeConsumidora);
                }
                return lstRamalUnidadeConsumidora;
            }
            catch (Exception)
            {
                throw;
            }
        }

        public IList<entidadeRamalUnidadeConsumidora> SelectOthersTables_1(entidadeRamalUnidadeConsumidora objRamalUnidadeConsumidora)
        {
            dalRamalUnidadeConsumidora dalRamalUnidadeConsumidora = null;

            var lstRamalUnidadeConsumidora = new List<entidadeRamalUnidadeConsumidora>();
            DataTable dt = null;

            try
            {
                dalRamalUnidadeConsumidora = new dalRamalUnidadeConsumidora();
                dt = dalRamalUnidadeConsumidora.SelectOthersTables_1(objRamalUnidadeConsumidora);

                foreach (DataRow dr in dt.Rows)
                {
                    objRamalUnidadeConsumidora = new entidadeRamalUnidadeConsumidora();
                    objRamalUnidadeConsumidora.entidadeSITUACAO = new entidadeSituacao();
                    objRamalUnidadeConsumidora.entidadeTIPOPADRAOMEDICAO = new entidadeTipoPadraoMedicao();


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

                    if (!Convert.IsDBNull(dr["IDUNIDADE_CONSUMIDORA"]))
                        objRamalUnidadeConsumidora.IDUNIDADE_CONSUMIDORA = Convert.ToInt32(dr["IDUNIDADE_CONSUMIDORA"]);

                    if (!Convert.IsDBNull(dr["IDRAMAL"]))
                        objRamalUnidadeConsumidora.IDRAMAL = Convert.ToInt32(dr["IDRAMAL"]);

                    if (!Convert.IsDBNull(dr["IDTIPO_PADRAO_MEDICAO"]))
                        objRamalUnidadeConsumidora.IDTIPO_PADRAO_MEDICAO = Convert.ToInt32(dr["IDTIPO_PADRAO_MEDICAO"]);

                    if (!Convert.IsDBNull(dr["DESCRICAO_TIPO_PADRAO_MEDICAO"]))
                        objRamalUnidadeConsumidora.entidadeTIPOPADRAOMEDICAO.DESCRICAO = dr["DESCRICAO_TIPO_PADRAO_MEDICAO"].ToString();
                   
                    if (!Convert.IsDBNull(dr["IDSITUACAO"]))
                        objRamalUnidadeConsumidora.IDSITUACAO = Convert.ToInt32(dr["IDSITUACAO"]);

                    if (!Convert.IsDBNull(dr["DESCRICAO_SITUACAO"]))
                        objRamalUnidadeConsumidora.entidadeSITUACAO.DESCRICAO = dr["DESCRICAO_SITUACAO"].ToString();


                    lstRamalUnidadeConsumidora.Add(objRamalUnidadeConsumidora);
                }
                return lstRamalUnidadeConsumidora;
            }
            catch (Exception)
            {
                throw;
            }
        }


    }
}
