예제 #1
0
        public void TestValorRetiroMayorDelMinimoMes()
        {
            //Dado:
            //El cliente tiene una cuenta de ahorro
            //Número 10001, Nombre "Cuenta ejemplo", Saldo de $40 mil pesos, tiene 3 retiros en el mes.


            //Cuando:
            //Va a retirar $20 mil pesos

            //Entonces:
            //El sistema no registrará el retiro.
            //AND presentará el mensaje. "El valor a retirar es incorrecto, el saldo minimo en
            //cuenta es de $20,000.00 pesos m/c".

            //Dado - Preparar (A)
            CuentaAhorros cuentaAhorro = new CuentaAhorros("10001", "Cuenta Ejemplo", "Valledupar", 40000, 3);

            decimal valorRetirar  = 30000;
            decimal valorEsperado = 40000;
            var     fechaRetiro   = new DateTime(2018, 02, 1);
            var     ciudad        = "Valledupar";

            //Cuando - Actuar (A)
            string mensajeRespuesta = cuentaAhorro.Retirar(valorRetirar, fechaRetiro, ciudad);

            //Entonces - Afirmar (A)
            Assert.AreEqual("El valor a retirar es incorrecto, el saldo minimo en cuenta es de $20,000.00 pesos m/c", mensajeRespuesta);
            Assert.AreEqual(cuentaAhorro.GetSaldo(), valorEsperado);
        }
예제 #2
0
        public void TestValorRetiroCorrectoConCosto()
        {
            //Dado:
            //El cliente tiene una cuenta de ahorro
            //Número 10001, Nombre "Cuenta ejemplo", Saldo de 60 mil pesos y dos retiros en el mes.


            //Cuando:
            //Va a retirar $30 mil pesos

            //Entonces:
            //El sistema registrará el retiro restando $35 mil pesos al saldo.
            //AND presentará el mensaje. "Su Nuevo Saldo es de $25,000.00 pesos m/c".

            //Dado - Preparar (A)
            CuentaAhorros cuentaAhorro = new CuentaAhorros("10001", "Cuenta Ejemplo", "Valledupar", 60000, 3);

            decimal valorRetirar = 30000;
            var     fechaRetiro  = new DateTime(2018, 02, 1);
            var     ciudad       = "Valledupar";

            //Cuando - Actuar (A)
            string mensajeRespuesta = cuentaAhorro.Retirar(valorRetirar, fechaRetiro, ciudad);

            //Entonces - Afirmar (A)
            Assert.AreEqual("Su Nuevo Saldo es de $25,000.00 pesos m/c", mensajeRespuesta);
        }
예제 #3
0
        public void TestConsignarInicialIncorrecta()
        {
            //Dado:
            //El cliente tiene una cuenta de ahorro con
            //Número 10001, Nombre “Cuenta ejemplo”, Saldo de 0

            //Cuando:
            //Va a consignar el valor inicial de $49.950 pesos

            //Entonces:
            //El sistema no registrará la consignación
            //AND presentará el mensaje.
            //“El valor mínimo de la primera consignación debe ser de $50,000.00 mil pesos”.


            //Dado - Preparar (A)
            CuentaAhorros cuentaAhorro = new CuentaAhorros("10001", "Cuenta Ejemplo", 0);

            decimal valorConsignar    = 49950;
            var     fechaConsignacion = new DateTime(2018, 02, 1);
            var     ciudad            = "Valledupar";

            //Cuando - Actuar (A)
            string mensajeRespuesta = cuentaAhorro.Consignar(valorConsignar, fechaConsignacion, ciudad);

            //Entonces - Afirmar (A)
            Assert.AreEqual("El valor minimo de la primera consignacion debe ser de $50,000.00 mil pesos.", mensajeRespuesta);
        }
예제 #4
0
        public void TestConsignarPosteriorCorrecta()
        {
            //Dado:
            //El cliente tiene una cuenta de ahorro con
            //Número 10001, Nombre “Cuenta ejemplo”, Saldo de 30000

            //Cuando:
            //Va a consignar el valor de $49.950 pesos

            //Entonces:
            //El sistema registrará la consignación
            //AND presentará el mensaje.
            //"Su Nuevo Saldo es de 79,950.00 pesos m/c"


            //Dado - Preparar (A)
            CuentaAhorros cuentaAhorro = new CuentaAhorros("10001", "Cuenta Ejemplo", 30000);

            decimal valorConsignar    = 49950;
            var     fechaConsignacion = new DateTime(2018, 02, 1);
            var     ciudad            = "Valledupar";

            //Cuando - Actuar (A)
            string mensajeRespuesta = cuentaAhorro.Consignar(valorConsignar, fechaConsignacion, ciudad);

            //Entonces - Afirmar (A)
            Assert.AreEqual("Su Nuevo Saldo es de $79,950.00 pesos m/c", mensajeRespuesta);
        }
예제 #5
0
        public void TestConsignarValorMenorACero()
        {
            //Dado:
            //El cliente tiene una cuenta de ahorro
            //Número 10001, Nombre “Cuenta ejemplo”, Saldo de 0

            //Cuando:
            //Va a consignar un valor -100

            //Entonces:
            //El sistema presentará el mensaje. “El valor a consignar es incorrecto”


            //Dado - Preparar (A)
            CuentaAhorros cuentaAhorro = new CuentaAhorros("10001", "Cuenta Ejemplo", 0);

            decimal valorConsignar    = -100;
            var     fechaConsignacion = new DateTime(2018, 02, 1);
            var     ciudad            = "Valledupar";

            //Cuando - Actuar (A)
            string mensajeRespuesta = cuentaAhorro.Consignar(valorConsignar, fechaConsignacion, ciudad);

            //Entonces - Afirmar (A)
            Assert.AreEqual("El valor a consignar es incorrecto", mensajeRespuesta);
        }
예제 #6
0
        public void TestValorRetiroMenorACero()
        {
            //Dado:
            //El cliente tiene una cuenta de ahorro
            //Número 10001, Nombre "Cuenta ejemplo", Saldo de $40 mil pesos.


            //Cuando:
            //Va a retirar 0 pesos

            //Entonces:
            //El sistema presentará el mensaje. "El valor a retirar es incorrecto"


            //Dado - Preparar (A)
            CuentaAhorros cuentaAhorro = new CuentaAhorros("10001", "Cuenta Ejemplo", 40000);

            decimal valorRetirar = 0;
            var     fechaRetiro  = new DateTime(2018, 02, 1);
            var     ciudad       = "Valledupar";

            //Cuando - Actuar (A)
            string mensajeRespuesta = cuentaAhorro.Retirar(valorRetirar, fechaRetiro, ciudad);

            //Entonces - Afirmar (A)
            Assert.AreEqual("El valor a retirar es incorrecto", mensajeRespuesta);
        }
예제 #7
0
        static void Main(string[] args)
        {
            CuentaAhorros cuenta1 = new CuentaAhorros();

            cuenta1.Referencia = "abc123";
            cuenta1.Saldo      = 500000;
            cuenta1.Clave      = 1234;
            // Console.WriteLine(cuenta1.Clave);

            double saldo = cuenta1.GetSaldo(1234, "aBc123");
        }
예제 #8
0
        static void Main(string[] args)
        {
            Cuenta        Cuenta1  = new Cuenta();
            CuentaAhorros CuentaA1 = new CuentaAhorros(5000.0, 0.02);

            CuentaA1.Abonar(200.0);
            CuentaA1.CalcularInteres();
            CuentaCheques CuentaC1 = new CuentaCheques();

            Console.WriteLine("El Interes del Saldo inicial ({0}) es: {1}", CuentaA1.SaldoCuenta, CuentaA1.TasaInteres);
        }
예제 #9
0
        public void TestMethodConsignacion()
        {
            double        saldo          = 5000000;
            double        valorEsperado  = 9000000;
            double        valorConsignar = 4000000;
            CuentaAhorros cuenta         = new CuentaAhorros("12345678901", "Maria", "1234570236", saldo);

            cuenta.consignar(valorConsignar);

            double nuevoSaldo = cuenta.Saldo;

            Assert.AreEqual(valorEsperado, nuevoSaldo, "No se hizo la consignación correctamente");
        }
예제 #10
0
        public void TestMethodRetiro()
        {
            double        saldo         = 5000000;
            double        valorEsperado = 1000000;
            double        valorRetirar  = 4000000;
            CuentaAhorros cuenta        = new CuentaAhorros("12345678901", "Maria", "1234570236", saldo);

            cuenta.retirar(valorRetirar);

            double nuevoSaldo = cuenta.Saldo;

            Assert.AreEqual(valorEsperado, nuevoSaldo, "No se hizo el retiro correctamente");
        }
예제 #11
0
        private void button1_Click(object sender, EventArgs e)
        {
            String saldo = Microsoft.VisualBasic.Interaction.InputBox("Introduzca el monto de dinero a consignar", "Consignar");

            if (saldo != null)
            {
                ahorros          = new CuentaAhorros(Convert.ToDouble(saldo));
                textahorros.Text = Convert.ToString(ahorros.darSaldo()) + " [" + Convert.ToString(ahorros.darInteresMensual()) + "%]";
            }
            else
            {
                MessageBox.Show("Ingrese Saldo");
            }
        }
예제 #12
0
        public void TestMethodTransferir()
        {
            double        valorEsperado = 2500000;
            double        monto         = 500000;
            CuentaAhorros cuentaUno     = new CuentaAhorros("12345678901", "Maria", "1234570236", 4000000);
            CuentaAhorros cuentaDos     = new CuentaAhorros("12345678902", "Carlos", "1234570237", 2000000);

            Form1.cuentas.Add(cuentaUno);
            Form1.cuentas.Add(cuentaDos);
            Form4.transferir("12345678901", "12345678902", monto);

            double nuevoSaldo = cuentaDos.Saldo;

            Assert.AreEqual(valorEsperado, nuevoSaldo, "No se hizo la transferencia correctamente");
        }
예제 #13
0
        public async Task InsertCuentaAhorros(CuentaAhorros cuentaAhorros)
        {
            var cuenta = await _cuentaAhorroRepository.GetCuentaAhorros(cuentaAhorros.NumeroCuenta);

            if (cuenta != null)
            {
                throw new BusinessException("La cuenta ya existe");
            }
            else
            {
                CuentaAhorros cuentaAhorro = new CuentaAhorros();
                cuentaAhorro.IdentificacionPersona = cuentaAhorros.IdentificacionPersona;
                cuentaAhorro.NumeroCuenta          = cuentaAhorros.NumeroCuenta;
                cuentaAhorro.Monto         = cuentaAhorros.Monto;
                cuentaAhorro.FechaCreacion = DateTime.Now;

                await _cuentaAhorroRepository.InsertCuentaAhorros(cuentaAhorro);
            }
        }
예제 #14
0
 private void CrearCuentaAhorros()
 {
     if (PedirDatosCliente())
     {
         if (PedirDatosCuenta())
         {
             var           random        = new Random();
             long          numeroCuenta  = (long)random.NextDouble();
             CuentaAhorros cuentaCliente = new CuentaAhorros()
             {
                 Saldo        = Convert.ToDouble(SaldoCliente),
                 Clave        = Convert.ToInt32(ClaveCliente),
                 NumeroCuenta = numeroCuenta,
                 Tope         = topeCuentas
             };
             Cliente cliente = new Cliente(cuentaCliente);
         }
     }
 }
예제 #15
0
        public IHttpActionResult CrearCuentaH([FromBody] CuentaAhorros nuevacuenta)
        {
            Respuesta respuesta = new Respuesta();

            try
            {
                Usuario nuevoUsuario = new Usuario()
                {
                    Nombre   = nuevacuenta.Nombre,
                    Apellido = nuevacuenta.Apellido
                };

                Cuenta nuevaCuenta = new Cuenta()
                {
                    Valor = nuevacuenta.Valor,
                };
                nuevoUsuario.Cuenta = nuevaCuenta;
                nuevaCuenta.Usuario = nuevoUsuario;

                using (var db = new Bankcontext())
                {
                    db.Usuario.Add(nuevoUsuario);
                    db.SaveChanges();
                }

                log.Info($"Secreo la cuenta del usuario {nuevoUsuario.Nombre}");
                respuesta.Estado = true;
                respuesta.Msg    = $"Se creo la cuenta {nuevoUsuario.Cuenta.NCuenta} al cliente {nuevoUsuario.Nombre} con un saldo de ${nuevoUsuario.Cuenta.Valor}";
                respuesta.Data   = nuevoUsuario;
                return(Ok(respuesta));
            }
            catch (Exception ex)
            {
                log.Error($"Error al consultar {ex.Message}");
                respuesta.Estado = false;
                respuesta.Msg    = "Erro al crear cuenta de ahorros";
                respuesta.Data   = null;
                return(Ok(respuesta));
            }
        }
예제 #16
0
 public async Task InsertCuentaAhorros(CuentaAhorros cuentaAhorros)
 {
     _context.CuentaAhorros.Add(cuentaAhorros);
     await _context.SaveChangesAsync();
 }
예제 #17
0
 public Cliente(CuentaAhorros cuenta)
 {
     MiCuenta = cuenta;
 }