Example #1
0
        // Usuario escolhe o investimento com valor pré-estabelecido na lista
        public void AplicarInvestimento(Investimento investimento)
        {
            // Inserir na lista da contaContabil, e na lista de transações, e fazer as relações bilaterais
            // Se saldo for suficiente, instanciar uma Transação de aplicação(p/ extrato) e incluir na lista de transações o investimento em si
            if (SaldoSuficiente(investimento.ValorInicial))
            {
                investimento.Status = "Aplicado";
                investimento.Conta  = this;
                Transacoes.Add(investimento);
                investimento.ContaContabil = BancoProp.ContaInvestimento;
                investimento.ContaContabil.Investimentos.Add(investimento);
                investimento.Valor = investimento.ValorInicial;

                Transacao t = new Transacao()
                {
                    Tipo      = "Aplicação",
                    Conta     = this,
                    Valor     = -investimento.ValorInicial,
                    Data      = DateTime.Today,
                    Descricao = "Aplicação feita no investimento '" + investimento.Descricao + "'"
                };
                Transacoes.Add(t);
                Saldo -= investimento.ValorInicial;
            }
        }
Example #2
0
 // Resgata o valor integral do investimento
 public void ResgatarInvestimento(Investimento investimento)
 {
     // Não precisa remover da lista da ContaContabil, status resgatado na lista Transacoes
     // Ações de rendimento ficam na classe de Investimento em si
     if (investimento.Status.Equals("Aplicado"))
     {
         investimento.Status = "Resgatado";
         investimento.Valor  = Math.Round(investimento.ValorInicial + investimento.CalcularRendimentoFinal(), 2);
         Transacao t = new Transacao()
         {
             Tipo      = "Resgate",
             Conta     = this,
             Valor     = investimento.Valor,
             Data      = DateTime.Today,
             Descricao = "Resgate do investimento '" + investimento.Descricao + "'"
         };
         Transacoes.Add(t);
         Saldo += investimento.Valor;
     }
 }