コード例 #1
0
        public ResultadoOperacion RetiroUsuario(CuentaCliente cuenta, double cantidad)
        {
            if (cuenta.Saldo < cantidad)
            {
                return(ResultadoOperacion.NoSaldo);
            }
            if (cantidad > BilletesRestantes * 20)
            {
                return(ResultadoOperacion.NoDinero);
            }

            CuentaCliente updateAcc = CuentaCliente.First(acc => cuenta.NumeroCuenta == acc.NumeroCuenta);

            updateAcc.Saldo -= cantidad;

            cuenta.Saldo = updateAcc.Saldo;

            HistorialRetiro.Add(new HistorialRetiro()
            {
                FechaHora = DateTime.Now, CuentaOrigen = cuenta.NumeroCuenta, Cantidad = cantidad
            });
            SaveChanges();

            BilletesRestantes -= (int)(cantidad / 20);

            return(ResultadoOperacion.Correcto);
        }
コード例 #2
0
        public void CerrarSesion(CuentaCliente cuenta)
        {
            foreach (var ent in cuenta.DepositosPendientes)
            {
                CuentaCliente updateAcc = CuentaCliente.First(acc => ent.Destination == acc.NumeroCuenta);
                updateAcc.Saldo += ent.Ammount;
                HistorialDeposito.Add(new HistorialDeposito()
                {
                    Cantidad = ent.Ammount, CuentaOrigen = cuenta.NumeroCuenta, CuentaDestino = ent.Destination, FechaHora = ent.Time
                });
            }

            SaveChanges();
        }
コード例 #3
0
        public ICuenta InicioSesion(int numCuenta, string pinPass)
        {
            var cuenta = Cuenta.FirstOrDefault(c => c.NumeroCuenta == numCuenta && c.PinPass == pinPass);

            if (cuenta == null)
            {
                return(null);
            }
            if (cuenta.TipoCuenta == TipoCuenta.Gerente)
            {
                var cuentaGerente = CuentaGerente.First(c => cuenta.NumeroCuenta == c.NumeroCuenta);
                cuentaGerente.Nombre = new Nombre(cuenta);
                return(cuentaGerente);
            }
            else if (cuenta.TipoCuenta == TipoCuenta.Cliente)
            {
                var cuentaGerente = CuentaCliente.First(c => cuenta.NumeroCuenta == c.NumeroCuenta);
                cuentaGerente.Nombre = new Nombre(cuenta);
                return(cuentaGerente);
            }
            return(null);
        }