public void Avaliar(Cliente pCliente,  Decimal pTarifaMensal, Decimal pLimiteCredito, Decimal pCreditoInicial)
        {
            ContaCorrente _contaCorrente = null;
            ContaCorrenteEspecial _contaCorrenteEspecial = null;
            SAvaliacaoSPC sAvaliacaoSPC = new SAvaliacaoSPC();
            SAvaliacaoSerasa sAvaliacaoSerasa = new SAvaliacaoSerasa();
            SAvaliacaoPerfil sAvaliacaoPerfil = new SAvaliacaoPerfil(pCreditoInicial);
            RepositorioContaCorrente rRepositorioContaCorrente = RepositorioContaCorrente.Instancia();

            sAvaliacaoSPC.Avaliar(pCliente);
            sAvaliacaoSerasa.Avaliar(pCliente);
            Double vValorPerfil = sAvaliacaoPerfil.Avaliar(pCliente);

            if (vValorPerfil == 1)
            {
                _contaCorrente = rRepositorioContaCorrente.CriarContaCorrente(pCliente, _agencia, pTarifaMensal);
                _contaCorrente.Creditar(pCreditoInicial);
                rRepositorioContaCorrente.Alterar<ContaCorrente>(_contaCorrente);
            }
            else if (vValorPerfil == 2)
            {
                _contaCorrenteEspecial = rRepositorioContaCorrente.CriarContaCorrente(pCliente, _agencia, pTarifaMensal, pLimiteCredito);
                _contaCorrenteEspecial.Creditar(pCreditoInicial);
                rRepositorioContaCorrente.Alterar<ContaCorrenteEspecial>(_contaCorrenteEspecial);
            }
        }
Exemplo n.º 2
0
 public ContaCorrente(Cliente pCliente, String pAgencia, String pNumeroConta, Decimal pTarifaMensal)
 {
     _titular = pCliente;
     Agencia = pAgencia;
     Numero = pNumeroConta;
     Tarifa = pTarifaMensal;
     _status = StatusContaCorrente.Ativa;
     if (_titular == null || Numero == String.Empty || Tarifa <= 0)
         throw new Exception("Não é possível criar uma conta corrente sem que o titular, número da conta ou tarifa");
 }
Exemplo n.º 3
0
 public Double Avaliar(Cliente pCliente)
 {
     Double vResult = 0;
     if (_creditoInicial < 50)
         throw new ExClienteSemPerfil("Cliente não possui perfil para abrir um conta corrente");
     else if (_creditoInicial >= 50 && _creditoInicial < 10000)
         vResult = 1; // Conta Corrente Comum;
     else if (_creditoInicial >= 10000)
         vResult = 2; // Conta Corrente Especial
     return vResult;
 }
Exemplo n.º 4
0
        public void ClienteNormalContaTest()
        {
            Normal target = new Normal();

            Cliente esperado = new Cliente();
            esperado.Nome = "Glebson";
            Cliente retornado;
            target.Nome = esperado;
            retornado = target.Nome;
            Assert.AreEqual(esperado, retornado);
        }
Exemplo n.º 5
0
 public Double Avaliar(Cliente pCliente)
 {
     number = random.NextDouble();
     return System.Math.Round(number, 1);
 }
 public ContaCorrenteEspecial(Cliente pCliente, String pAgencia, String pNumeroConta, Decimal pTarifaMensal, Decimal pLimite)
 {
     _limite = pLimite;
 }