using Exferia_EntityFramework;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Exferia_Aplicacion.Modelos_Informes
{
    public class INTERNO_Informes_Vencimiento_Modelo
    {

        public INTERNO_Informes_Vencimiento_Modelo()
        {}

        public int Tipo_Inicial_Permanencia_Baja { get; set; }

        

        public long Empresa_Id { get; set; }
        public string Empresa_INE { get; set; }
        public string Empresa_NIF { get; set; }
        public string Empresa_Codigo { get; set; }

        public long Ejercicio_id { get; set; }
        public string Ejercicio_Anyo { get; set; }

        public decimal Vencimiento_Importe { get; set; }
        public long Vencimiento_Codigo { get; set; }
        public string Vencimiento_Referencia { get; set; }
        public bool? Vencimiento_Sancion { get; set; }
        public string Vencimiento_NumeroExpedienteSancion { get; set; }

        public long FacturaVenta_Id { get; set; }
        public string FacturaVenta_Identificacion { get; set; }
        public string FacturaVenta_ClaveEmisora { get; set; }
        public DateTime FacturaVenta_Fecha { get; set; }

        public string Concepto_Codigo { get; set; }
        public string Concepto_Descripcion { get; set; }
        public string Concepto_Texto_Tasa_Inicial { get; set; }
        public string Concepto_Texto_Tasa_Permanencia { get; set; }

        public long Entidad_id { get; set; }
        public DateTime? Entidad_FechaBaja { get; set; }
        public DateTime Entidad_FechaAlta { get; set; }
        public string Entidad_CIF { get; set; }
        public string Entidad_roeZEC { get; set; }
        public string Entidad_Codigo { get; set; }
        public string Entidad_NombreComercial { get; set; }
        public string Entidad_RazonSocial { get; set; }
        public string Entidad_Direccion { get; set; }
        public string Entidad_Poblacion { get; set; }
        public string Entidad_CodigoPostal { get; set; }
        public string Entidad_IBAN
        {
            get
            {
                string str_IBAN = "";
                if (CuentasBancariasSEPA_Cobros != null)
                {
                    str_IBAN = CuentasBancariasSEPA_Cobros.iban;
                }

                return str_IBAN;
            }
        }

        public string CuentaBancaria_BICSWIFT
        {
            get
            {
                string str_bicSwift = "";
                if (CuentasBancariasSEPA_Cobros != null)
                {
                    str_bicSwift = CuentasBancariasSEPA_Cobros.bicSwift;
                }

                return str_bicSwift;
            }
        }

        public int CuentaBancaria_Recurrente
        {
            get
            {
                int int_Recurrente = 0;
                if (CuentasBancariasSEPA_Cobros != null)
                {
                    int_Recurrente = 1;
                    if (CuentasBancariasSEPA_Cobros.recurrente==false)
                    {
                        int_Recurrente = 2;
                    }
                }

                return int_Recurrente;
            }
        }

        public string EntidadBancaria_Codigo { get; set; }
        public string EntidadBancaria_Descripcion { get; set; }

        public string Provincia_Codigo { get; set; }
        public string Provincia_Descripcion { get; set; }

        public string Pais_Codigo { get; set; }
        public string Pais_Descripcion { get; set; }

        public string Conceptos_Ejercicio_TextoInforme { get; set; }

        public MAE_CuentasBancariasSEPA_Cobros CuentasBancariasSEPA_Cobros { get; set; }
    }
}
