public IHttpActionResult Put(int idPessoa, [FromBody] HistoricoInvestido value)
        {
            try
            {
                Carteira carteira    = new Carteira();
                double   valorCripto = new Negocio().ConverterRealParaCripto(value.ValorInvestido, value._carteira.TipoMoeda);
                carteira._pessoa          = new Pessoa();
                carteira._pessoa.IdPessoa = idPessoa;
                carteira.IdCarteira       = value._carteira.IdCarteira;
                carteira.TipoMoeda        = value._carteira.TipoMoeda;
                CarteiraCrud carteiraCrud   = new CarteiraCrud();
                var          carteiraAntiga = carteiraCrud.ConsultarPorIdPessoaANDTMoeda(carteira);
                carteira.Saldo = carteiraAntiga.Saldo + valorCripto;

                HistoricoCarteira  historicoCarteira  = new HistoricoCarteira(value._carteira, DateTime.Now, value.ValorInvestido, "Resgate Investimento");
                HistoricoInvestido historicoInvestido = new HistoricoInvestido(value._carteira, DateTime.Now);

                carteiraCrud.Alterar(carteira);
                new HistoricoCarteiraCrud().InserirResgateInvestimento(historicoCarteira);
                new HistoricoInvestidoCrud().ResgatarInvestimento(historicoInvestido);

                return(Ok(idPessoa));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
        private string Inserir(HistoricoCarteira historicoCarteira, string tipoTransacao)
        {
            try
            {
                acessoDados.LimparParametros();
                acessoDados.AdicionarParametros("@DataHora", historicoCarteira.DataHora);
                if (historicoCarteira.dtVencimento != DateTime.MinValue)
                {
                    acessoDados.AdicionarParametros("@dtVencimento", historicoCarteira.dtVencimento);
                }
                else
                {
                    acessoDados.AdicionarParametros("@dtVencimento", DBNull.Value);
                }
                acessoDados.AdicionarParametros("@Valor", historicoCarteira.Valor);
                acessoDados.AdicionarParametros("@IdCarteira", historicoCarteira._carteira.IdCarteira);
                acessoDados.AdicionarParametros("@TipoTransacao", tipoTransacao);
                acessoDados.AdicionarParametros("@Descricao", historicoCarteira.Descricao);
                string retornoHistorico = acessoDados.ExecutarManipulacao(CommandType.Text, "BEGIN " +
                                                                          "INSERT INTO HistoricoCarteira " +
                                                                          "(DataHora,Valor,IdCarteira,TipoTransacao, Descricao, dtVencimento) " +
                                                                          "VALUES (@DataHora,@Valor,@IdCarteira,@TipoTransacao, @Descricao, @dtVencimento) " +
                                                                          "SELECT @@IDENTITY as RETORNO " +
                                                                          "END").ToString();

                return(retornoHistorico);
            }
            catch (Exception exception)
            {
                throw exception;
            }
        }
        public IHttpActionResult Post([FromBody] HistoricoInvestido value)
        {
            try
            {
                HistoricoCarteiraCrud  historicoCarteiraCrud  = new HistoricoCarteiraCrud();
                HistoricoInvestidoCrud historicoInvestidoCrud = new HistoricoInvestidoCrud();
                CarteiraCrud           carteiraCrud           = new CarteiraCrud();
                value._carteira = carteiraCrud.ConsultarPorIdPessoaANDTMoeda(value._carteira);

                value.DtInicio = DateTime.Now;

                double valorEmReais = value.ValorInvestido;
                value.ValorInvestido  = new Negocio().ConverterRealParaCripto(value.ValorInvestido, value._carteira.TipoMoeda);
                value._carteira.Saldo = value._carteira.Saldo - value.ValorInvestido;
                if (value._carteira.Saldo < 0)
                {
                    value._carteira.Saldo = value._carteira.Saldo + value.ValorInvestido;
                    value._carteira.Saldo = new Negocio().ConverterCriptoParaReal(value._carteira.Saldo, value._carteira.TipoMoeda);
                    HttpResponseMessage response = this.Request.CreateErrorResponse(HttpStatusCode.BadRequest,
                                                                                    "Saldo Insuficiente! Saldo atual desta moeda: R$" + value._carteira.Saldo.ToString("N2"));
                    throw new HttpResponseException(response);
                }

                HistoricoCarteira historicoCarteira = new HistoricoCarteira(value._carteira, value.DtInicio, valorEmReais, "Investimento");

                carteiraCrud.Alterar(value._carteira);
                historicoCarteiraCrud.InserirInvestimento(historicoCarteira);
                String retorno = historicoInvestidoCrud.Inserir(value);
                return(Ok(retorno));
            }
            catch (Exception)
            {
                throw;
            }
        }
        private List <HistoricoCarteira> popular(DataTable dataTable)
        {
            //Criar uma nova coleção de clientes
            List <HistoricoCarteira> historicoColecao = new List <HistoricoCarteira>();

            foreach (DataRow linha in dataTable.Rows)
            {
                //Criar cliente vazio
                //Colocar os dados da linha
                //Adicionar na coleção
                HistoricoCarteira historicoAdd = new HistoricoCarteira();

                historicoAdd.DataHora             = Convert.ToDateTime(linha["DataHora"]);
                historicoAdd.IdHistorico          = Convert.ToInt32(linha["IdHistorico"]);
                historicoAdd.Valor                = Convert.ToDouble(linha["Valor"]);
                historicoAdd._carteira            = new Carteira();
                historicoAdd._carteira.IdCarteira = Convert.ToInt32(linha["IdCarteira"]);
                historicoAdd.TipoTransacao        = Convert.ToString(linha["TipoTransacao"]);
                historicoAdd.Descricao            = Convert.ToString(linha["Descricao"]);
                if (!linha.IsNull("dtVencimento"))
                {
                    historicoAdd.dtVencimento = Convert.ToDateTime(linha["dtVencimento"]);
                }

                historicoColecao.Add(historicoAdd);
            }

            return(historicoColecao);
        }
Exemple #5
0
        public HistoricoCarteira Obter(string numeroBoleto)
        {
            HistoricoCarteira historicoCarteira = new HistoricoCarteira();

            historicoCarteira.Valor        = new Random().Next(50, 200);
            historicoCarteira.dtVencimento = DateTime.Now;
            return(historicoCarteira);
        }
Exemple #6
0
 // GET: api/transacao/obter-boleto
 public IHttpActionResult ObterBoleto(String numeroBoleto)
 {
     try
     {
         BuscarBoletoServices buscarBoletoServices = new BuscarBoletoServices();
         HistoricoCarteira    boleto = buscarBoletoServices.Obter(numeroBoleto);
         return(Ok(boleto));
     }
     catch (Exception)
     {
         throw;
     }
 }
        public string Excluir(HistoricoCarteira historicoCarteira)
        {
            try
            {
                acessoDados.LimparParametros();
                acessoDados.AdicionarParametros("@IdHistorico", historicoCarteira.IdHistorico);
                string retornoHistorico = acessoDados.ExecutarManipulacao(CommandType.Text, "BEGIN " +
                                                                          "DELETE FROM HistoricoCarteira WHERE IdHistorico= @IdHistorico " +
                                                                          "SELECT @IdHistorico AS RETORNO").ToString();

                return(retornoHistorico);
            }
            catch (Exception exception)
            {
                return(exception.Message);
            }
        }
        public string Alterar(HistoricoCarteira historicoCarteira)
        {
            try
            {
                acessoDados.LimparParametros();
                acessoDados.AdicionarParametros("@DataHora", historicoCarteira.DataHora);
                acessoDados.AdicionarParametros("@Valor", historicoCarteira.Valor);
                acessoDados.AdicionarParametros("@IdCarteira", historicoCarteira._carteira.IdCarteira);
                acessoDados.AdicionarParametros("@Descricao", historicoCarteira.Descricao);
                string retornoHistorico = acessoDados.ExecutarManipulacao(CommandType.Text, "BEGIN " +
                                                                          "UPDATE TipoTransacao " +
                                                                          "SET DataHora=@DataHora,Valor=@Valor,IdCarteira=@IdCarteira, Descricao=@Descricao " +
                                                                          "WHERE IdHistorico = @IdHistorico " +
                                                                          "SELECT @IdHistorico AS RETORNO END").ToString();

                return(retornoHistorico);
            }
            catch (Exception exception)
            {
                return(exception.Message);
            }
        }
 public string InserirResgateInvestimento(HistoricoCarteira historicoCarteira)
 {
     return(Inserir(historicoCarteira, "Resgate Investimento"));
 }
 public string InserirCompraMoeda(HistoricoCarteira historicoCarteira)
 {
     return(Inserir(historicoCarteira, "Compra Moeda"));
 }
 public string InserirBoleto(HistoricoCarteira historicoCarteira)
 {
     return(Inserir(historicoCarteira, "Boleto"));
 }