示例#1
0
 public Requerimiento(DatosParaElRequerimiento losDatos)
 {
     laFechaComoTextoFinal  = GenereLaFechaComoTexto(losDatos);
     numeroDelClienteFinal  = FormateeElNumeroDelClienteFinal(losDatos);
     numeroDelSistemaFinal  = FormateeElNumeroDelSistemaFinal(losDatos);
     numeroConsecutivoFinal = FormateeElNumeroConsecutivoFinal(losDatos);
 }
示例#2
0
        public CodigoDeReferenciaParaInversion(DatosParaLaInversion losDatos)
        {
            losDatosParaElRequerimiento = new DatosParaElRequerimiento();

            losDatosParaElRequerimiento.Fecha             = losDatos.FechaActual;
            losDatosParaElRequerimiento.NumeroDelCliente  = losDatos.NumeroDelCliente;
            losDatosParaElRequerimiento.NumeroDelSistema  = losDatos.NumeroDelSistema;
            losDatosParaElRequerimiento.NumeroConsecutivo = losDatos.ConsecutivoParaElCodigoDeReferencia;
        }
示例#3
0
        public void ComoTexto_FechaCompleta_FechaComoTextoYConCerosNecesarios()
        {
            elResultadoEsperado = "20001111";

            losDatos            = new DatosParaElRequerimiento();
            losDatos.Fecha      = new DateTime(2000, 11, 11);
            elResultadoObtenido = new Fecha(losDatos).ComoTexto();

            Assert.AreEqual(elResultadoEsperado, elResultadoObtenido);
        }
示例#4
0
        public void Formateado_FechaCompleta_DiaConLosCerosNecesarios()
        {
            elResultadoEsperado = "01";

            losDatos            = new DatosParaElRequerimiento();
            losDatos.Fecha      = new DateTime(2000, 11, 1);
            elResultadoObtenido = new DiaComoTexto(losDatos).Formateado();

            Assert.AreEqual(elResultadoEsperado, elResultadoObtenido);
        }
示例#5
0
        public void ComoTexto_FechaCompleta_MesComoTexto()
        {
            elResultadoEsperado = "11";

            losDatos            = new DatosParaElRequerimiento();
            losDatos.Fecha      = new DateTime(2000, 11, 11);
            elResultadoObtenido = new Mes(losDatos).ComoTexto();

            Assert.AreEqual(elResultadoEsperado, elResultadoObtenido);
        }
示例#6
0
        public static Inversion GenereUnaNuevaInversion(double elValorFacial,
                                                        double elValorTransadoNeto,
                                                        double laTasaDeImpuesto,
                                                        DateTime laFechaActual,
                                                        DateTime laFechaDeVencimiento,
                                                        bool tieneTratamientoFiscal,
                                                        string elConsecutivoParaElCodigoDeReferencia)
        {
            Inversion laNuevaInversion = new Inversion();

            DatosParaElRequerimiento losDatosParaElRequerimiento = new DatosParaElRequerimiento();

            losDatosParaElRequerimiento.Fecha             = laFechaActual;
            losDatosParaElRequerimiento.NumeroDelCliente  = "22";
            losDatosParaElRequerimiento.NumeroDelSistema  = "5";
            losDatosParaElRequerimiento.NumeroConsecutivo = elConsecutivoParaElCodigoDeReferencia;

            laNuevaInversion.CodigoDeReferencia = new CodigoDeReferencia(losDatosParaElRequerimiento).ComoTexto();

            if (tieneTratamientoFiscal)
            {
                DatosDeInversionConTratamientoFiscal losDatosConTratamiento = new DatosDeInversionConTratamientoFiscal();
                losDatosConTratamiento.ValorFacial        = elValorFacial;
                losDatosConTratamiento.ValorTransadoNeto  = elValorTransadoNeto;
                losDatosConTratamiento.TasaDeImpuesto     = laTasaDeImpuesto;
                losDatosConTratamiento.FechaActual        = laFechaActual;
                losDatosConTratamiento.FechaDeVencimiento = laFechaDeVencimiento;

                laNuevaInversion.TasaNeta                = losDatosConTratamiento.TasaNeta;
                laNuevaInversion.TasaBruta               = new TasaBruta(losDatosConTratamiento).Calculado();
                laNuevaInversion.ValorTransadoBruto      = new ValorTransadoBrutoConTratamientoFiscal(losDatosConTratamiento).ComoNumero();
                laNuevaInversion.ImpuestoPagado          = losDatosConTratamiento.Impuesto;
                laNuevaInversion.RendimientoPorDescuento = new RendimientosPorDescuento(losDatosConTratamiento).ComoNumero();
            }
            else
            {
                DatosDeInversionSinTratamientoFiscal losDatosSinTratamiento = new DatosDeInversionSinTratamientoFiscal();
                losDatosSinTratamiento.ValorFacial        = elValorFacial;
                losDatosSinTratamiento.ValorTransadoNeto  = elValorTransadoNeto;
                losDatosSinTratamiento.TasaDeImpuesto     = laTasaDeImpuesto;
                losDatosSinTratamiento.FechaActual        = laFechaActual;
                losDatosSinTratamiento.FechaDeVencimiento = laFechaDeVencimiento;

                laNuevaInversion.TasaNeta                = losDatosSinTratamiento.TasaNeta;
                laNuevaInversion.TasaBruta               = new TasaBruta(losDatosSinTratamiento).Calculado();
                laNuevaInversion.ValorTransadoBruto      = elValorTransadoNeto;
                laNuevaInversion.ImpuestoPagado          = losDatosSinTratamiento.Impuesto;
                laNuevaInversion.RendimientoPorDescuento = new RendimientosPorDescuento(losDatosSinTratamiento).ComoNumero();
            }

            laNuevaInversion.FechaDeValor       = laFechaActual;
            laNuevaInversion.FechaDeVencimiento = laFechaDeVencimiento;

            return(laNuevaInversion);
        }
示例#7
0
        private DatosParaElRequerimiento AsigneLosDatosParaElRequerimiento(DatosParaLaInversion losDatos)
        {
            DatosParaElRequerimiento losDatosParaElRequerimiento = new DatosParaElRequerimiento();

            losDatosParaElRequerimiento.Fecha             = losDatos.FechaActual;
            losDatosParaElRequerimiento.NumeroDelCliente  = "22";
            losDatosParaElRequerimiento.NumeroDelSistema  = "5";
            losDatosParaElRequerimiento.NumeroConsecutivo = losDatos.ConsecutivoParaElCodigoDeReferencia;

            return(losDatosParaElRequerimiento);
        }
        private DatosParaElRequerimiento AsigneLosDatosParaElRequerimiento(DateTime laFechaActual, string elConsecutivoParaElCodigoDeReferencia)
        {
            DatosParaElRequerimiento losDatosParaElRequerimiento = new DatosParaElRequerimiento();

            losDatosParaElRequerimiento.Fecha             = laFechaActual;
            losDatosParaElRequerimiento.NumeroDelCliente  = "22";
            losDatosParaElRequerimiento.NumeroDelSistema  = "5";
            losDatosParaElRequerimiento.NumeroConsecutivo = elConsecutivoParaElCodigoDeReferencia;

            return(losDatosParaElRequerimiento);
        }
示例#9
0
        public void ComoTexto_GeneraDosVerificadores_TruncaUnDigito()
        {
            elResultadoEsperado = "20001111333228888888888881";

            losDatos                   = new DatosParaElRequerimiento();
            losDatos.Fecha             = new DateTime(2000, 11, 11);
            losDatos.NumeroDelCliente  = "333";
            losDatos.NumeroDelSistema  = "22";
            losDatos.NumeroConsecutivo = "888888888888";

            elResultadoObtenido = new CodigoDeReferencia(losDatos).ComoTexto();

            Assert.AreEqual(elResultadoEsperado, elResultadoObtenido);
        }
示例#10
0
        public void ComoTexto_FechaNumeroDelClienteSistemaYConsecutivo_RequerimientoComoTexto()
        {
            elResultadoEsperado = "2000111133322888888888888";

            losDatos                   = new DatosParaElRequerimiento();
            losDatos.Fecha             = new DateTime(2000, 11, 11);
            losDatos.NumeroDelCliente  = "333";
            losDatos.NumeroDelSistema  = "22";
            losDatos.NumeroConsecutivo = "888888888888";

            elResultadoObtenido = new Requerimiento(losDatos).ComoTexto();

            Assert.AreEqual(elResultadoEsperado, elResultadoObtenido);
        }
示例#11
0
        public void ComoTexto_elConsecutivoTieneMenosDigitos_PrecedeConCeros()
        {
            elResultadoEsperado = "20001111333220000000000047";

            losDatos                   = new DatosParaElRequerimiento();
            losDatos.Fecha             = new DateTime(2000, 11, 11);
            losDatos.NumeroDelCliente  = "333";
            losDatos.NumeroDelSistema  = "22";
            losDatos.NumeroConsecutivo = "4";

            elResultadoObtenido = new CodigoDeReferencia(losDatos).ComoTexto();

            Assert.AreEqual(elResultadoEsperado, elResultadoObtenido);
        }
示例#12
0
 public Fecha(DatosParaElRequerimiento losDatos)
 {
     elAñoComoTextoFinal = GenereElAñoComoTexto(losDatos);
     elMesComoTextoFinal = GenereElMesComoTextoFormateado(losDatos);
     elDiaComoTextoFinal = GenereElDiaComoTextoFormateado(losDatos);
 }
示例#13
0
 private string GenereElDiaComoTextoFormateado(DatosParaElRequerimiento losDatos)
 {
     return(new DiaComoTexto(losDatos).Formateado());
 }
示例#14
0
 private string GenereElAñoComoTexto(DatosParaElRequerimiento losDatos)
 {
     return(new Año(losDatos).ComoTexto());
 }
 public CodigoDeReferenciaParaInversion(DateTime laFechaActual, string elConsecutivoParaElCodigoDeReferencia)
 {
     losDatosParaElRequerimiento = AsigneLosDatosParaElRequerimiento(laFechaActual, elConsecutivoParaElCodigoDeReferencia);
 }
示例#16
0
 private string GenereLaFechaComoTexto(DatosParaElRequerimiento losDatos)
 {
     return(new Fecha(losDatos).ComoTexto());
 }
示例#17
0
 public CodigoDeReferencia(DatosParaElRequerimiento losDatos)
 {
     elRequerimiento = GenereElRequerimiento(losDatos);
     elDigitoVerificadorComoTexto = GenereElDigitoVerificadorComoTexto();
 }
示例#18
0
 private string FormateeElNumeroConsecutivoFinal(DatosParaElRequerimiento losDatos)
 {
     return(losDatos.NumeroConsecutivoFormateado);
 }
示例#19
0
 public CodigoDeReferenciaParaInversion(DatosParaLaInversion losDatos)
 {
     losDatosParaElRequerimiento = AsigneLosDatosParaElRequerimiento(losDatos);
 }
示例#20
0
 private static string AsigneElCodigoDeReferencia(DatosParaElRequerimiento losDatosParaElRequerimiento)
 {
     return(new CodigoDeReferencia(losDatosParaElRequerimiento).ComoTexto());
 }
示例#21
0
        private static string GenereElCodigoDeReferencia(DateTime laFechaActual, string elConsecutivoParaElCodigoDeReferencia)
        {
            DatosParaElRequerimiento losDatosParaElRequerimiento = AsigneLosDatosParaElRequerimiento(laFechaActual, elConsecutivoParaElCodigoDeReferencia);

            return(AsigneElCodigoDeReferencia(losDatosParaElRequerimiento));
        }
示例#22
0
文件: Dia.cs 项目: Chiny21/CleanCode
 public Dia(DatosParaElRequerimiento losDatos)
 {
     // TODO: NO CUMPLE CON LA LEY DE DEMETER
     elDia = losDatos.Fecha.Day;
 }
示例#23
0
 public Mes(DatosParaElRequerimiento losDatos)
 {
     // TODO: NO CUMPLE CON LA LEY DE DEMETER
     elMes = losDatos.Fecha.Month;
 }
示例#24
0
 public MesComoTexto(DatosParaElRequerimiento losDatos)
 {
     elMesComoTexto = new Mes(losDatos).ComoTexto();
 }
示例#25
0
文件: Dia.cs 项目: Chiny21/CleanCode
 public Dia(DatosParaElRequerimiento losDatos)
 {
     elDia = losDatos.DiaDeLaFecha;
 }
示例#26
0
 public Año(DatosParaElRequerimiento losDatos)
 {
     elAño = losDatos.AñoDeLaFecha;
 }
示例#27
0
 public DiaComoTexto(DatosParaElRequerimiento losDatos)
 {
     elDiaComoTexto = new Dia(losDatos).ComoTexto();
 }
示例#28
0
 private string FormateeElNumeroDelSistemaFinal(DatosParaElRequerimiento losDatos)
 {
     return(losDatos.NumeroDelSistemaFormateado);
 }
示例#29
0
文件: Año.cs 项目: Chiny21/CleanCode
 public Año(DatosParaElRequerimiento losDatos)
 {
     // TODO: NO CUMPLE CON LA LEY DE DEMETER
     elAño = losDatos.Fecha.Year;
 }
示例#30
0
文件: Mes.cs 项目: Chiny21/CleanCode
 public Mes(DatosParaElRequerimiento losDatos)
 {
     elMes = losDatos.MesDeLaFecha;
 }