public virtual void Sacar(decimal valor, string senha)
        {
            if (senha != Senha)
            {
                throw new Exception("Senha incorreta.");
            }

            var saque = new Saque(valor, DateTime.Now, this);

            if (Saldo < saque.Valor)
            {
                throw new Exception("Saldo indisponível.");
            }

            Saldo -= saque.Valor;
            Lancamentos.Add(saque);
        }
Esempio n. 2
0
        public override void Sacar(decimal valor, string senha)
        {
            if (senha != Senha)
            {
                throw new Exception("Senha incorreta.");
            }

            var saque = new Saque(valor, DateTime.Now, this);

            var valorMaximoSaque = Saldo + Limite;

            if (valorMaximoSaque < saque.Valor)
            {
                throw new Exception("O saldo + limite não são suficientes para realizar o saque.");
            }

            Saldo -= saque.Valor;
            Lancamentos.Add(saque);
        }