using Exferia_Aplicacion.General;
using Exferia_Aplicacion.Modelos_Contabilidad;
using Exferia_Aplicacion.Modelos_Volcado;
using Exferia_EntityFramework;
using Exferia_Personal._2_Datos;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Exferia_Personal
{
    public class Datos_Personal
    {
        #region PER_Nominas
        private INTERNO_PER_Nominas_Volcado_Modelo PER_Nominas_Obtener_Volcado(long _lng_id)
        {
            INTERNO_PER_Nominas_Volcado_Modelo mdl_INTERNO_PER_Nominas_Volcado_Modelo = null;

            try
            {
                PER_Nominas_Datos obj_PER_Nominas_Datos = new PER_Nominas_Datos();
                mdl_INTERNO_PER_Nominas_Volcado_Modelo= obj_PER_Nominas_Datos.Obtener_Volcado(_lng_id);
            }
            catch (Control_Errores)
            {
                mdl_INTERNO_PER_Nominas_Volcado_Modelo= null;
            }
            catch (Exception)
            {
                mdl_INTERNO_PER_Nominas_Volcado_Modelo= null;
            }

            return mdl_INTERNO_PER_Nominas_Volcado_Modelo;
        }

        private PER_Nominas PER_Nominas_Obtener_Modelo_Por_Id(long _lng_id)
        {
            PER_Nominas mdl_PER_Nominas = null;
            try
            {
                PER_Nominas_Datos obj_PER_Nominas_Datos = new PER_Nominas_Datos();

                mdl_PER_Nominas = obj_PER_Nominas_Datos.Obtener_Modelo_Por_Id(_lng_id,false);
            }
            catch (Control_Errores)
            {
                mdl_PER_Nominas = null;
            }
            catch (Exception)
            {
                mdl_PER_Nominas = null;
            }

            return mdl_PER_Nominas;
        }

        private List<INTERNO_CTU_Cartera_Personal_Modelo> PER_Nominas_Obtener_Para_CTU_Cartera_Personal_Por_Nomina(long _lng_idNomina, long _lng_idEmpresa)
        {
            try
            {
                PER_Nominas_Datos obj_PER_Nominas_Datos = new PER_Nominas_Datos();
                return obj_PER_Nominas_Datos.CTU_Cartera_Personal_Obtener_Por_Nomina(_lng_idNomina, _lng_idEmpresa);
            }
            catch (Control_Errores)
            {
                return null;
            }
            catch (Exception)
            {
                return null;
            }
        }
        private List<INTERNO_CTU_Cartera_Personal_Modelo> PER_Nominas_Obtener_Para_CTU_Cartera_Personal_Por_Empleado(long _lng_idEmpleado, long _lng_idEmpresa)
        {
            try
            {
                PER_Nominas_Datos obj_PER_Nominas_Datos = new PER_Nominas_Datos();
                return obj_PER_Nominas_Datos.CTU_Cartera_Personal_Obtener_Por_Empleado(_lng_idEmpleado, _lng_idEmpresa);
            }
            catch (Control_Errores)
            {
                return null;
            }
            catch (Exception)
            {
                return null;
            }
        }
        
        #endregion

        #region PER_NominasPagos
        private INTERNO_PER_NominasPagos_Volcado_Modelo PER_NominasPagos_Obtener_Volcado(long _lng_id)
        {
            INTERNO_PER_NominasPagos_Volcado_Modelo mdl_INTERNO_PER_NominasPagos_Volcado_Modelo = null;

            try
            {
                PER_NominasPagos_Datos obj_PER_NominasPagos_Datos = new PER_NominasPagos_Datos();
                mdl_INTERNO_PER_NominasPagos_Volcado_Modelo = obj_PER_NominasPagos_Datos.Obtener_Volcado(_lng_id);
            }
            catch (Control_Errores)
            {
                mdl_INTERNO_PER_NominasPagos_Volcado_Modelo = null;
            }
            catch (Exception)
            {
                mdl_INTERNO_PER_NominasPagos_Volcado_Modelo = null;
            }

            return mdl_INTERNO_PER_NominasPagos_Volcado_Modelo;
        }

        private PER_NominasPagos PER_NominasPagos_Obtener_Modelo_Por_Id(long _lng_id)
        {
            PER_NominasPagos mdl_PER_NominasPagos = null;
            try
            {
                PER_NominasPagos_Datos obj_PER_NominasPagos_Datos = new PER_NominasPagos_Datos();

                mdl_PER_NominasPagos = obj_PER_NominasPagos_Datos.Obtener_Modelo_Por_Id(_lng_id,false);
            }
            catch (Control_Errores)
            {
                mdl_PER_NominasPagos = null;
            }
            catch (Exception)
            {
                mdl_PER_NominasPagos = null;
            }

            return mdl_PER_NominasPagos;
        }
        #endregion

        #region PER_NominasVencimientos
        private PER_NominasVencimientos PER_NominasVencimientos_Obtener_Modelo_Por_Id(long _lng_id)
        {
            PER_NominasVencimientos mdl_PER_NominasVencimientos = null;
            try
            {
                PER_NominasVencimientos_Datos obj_PER_NominasVencimientos_Datoss = new PER_NominasVencimientos_Datos();

                mdl_PER_NominasVencimientos = obj_PER_NominasVencimientos_Datoss.Obtener_Modelo_Por_Id(_lng_id, false);
            }
            catch (Control_Errores)
            {
                mdl_PER_NominasVencimientos = null;
            }
            catch (Exception)
            {
                mdl_PER_NominasVencimientos = null;
            }

            return mdl_PER_NominasVencimientos;
        }
        #endregion

        #region PER_NominasRemesasCabecera
        private INTERNO_PER_NominasRemesasCabecera_Volcado_Modelo PER_NominasRemesasCabecera_Obtener_Volcado(long _lng_id)
        {
            try
            {
                PER_NominasRemesasCabecera_Datos obj_PER_NominasRemesasCabecera_Datos = new PER_NominasRemesasCabecera_Datos();
                return obj_PER_NominasRemesasCabecera_Datos.Obtener_Volcado(_lng_id);
            }
            catch (Control_Errores)
            {
                return null;
            }
            catch (Exception)
            {
                return null;
            }
        }
        #endregion PER_NominasRemesasCabecera


    }
}
