コード例 #1
0
        }// ListarTransacoes()

        public void MudarSaldo(UsuarioViewModel usuario, TransacaoViewModel transacao)
        {
            string[] linhas = File.ReadAllLines(DatabaseUtils.usuarios);
            for (int i = 0; i < linhas.Length; i++)
            {
                string[] linha = linhas[i].Split(";");

                if (linha[0].Equals(usuario.Nome))
                {
                    double saldoAntigo = double.Parse(linha[4]);
                    // double novoSaldo;

                    if (transacao.Tipo.Equals("DESPESA"))
                    {
                        usuario.Saldo = saldoAntigo - transacao.Valor;
                    }
                    else if (transacao.Tipo.Equals("RECEITA"))
                    {
                        usuario.Saldo = saldoAntigo + transacao.Valor;
                    }


                    linhas[i] = $"{usuario.Nome};{usuario.Email};{usuario.Senha};{usuario.DataDenascimento:dd/MM/yyyy};{usuario.Saldo}";
                    break;
                }
            }
            File.WriteAllLines(DatabaseUtils.usuarios, linhas);
            // StreamWriter sw = new StreamWriter("usuarios.csv",false);
            // sw.WriteLine($"{usuario.Nome};{usuario.Email};{usuario.Senha};{usuario.DataDenascimento:dd/MM/yyyy};{usuario.Saldo}");
            // sw.Close();
        }
コード例 #2
0
        public static List <TransacaoViewModel> Listar()
        {
            List <TransacaoViewModel> listaDeTransacoes = new List <TransacaoViewModel>();
            TransacaoViewModel        transacao;

            if (!File.Exists("transacao.csv"))
            {
                return(null);
            }

            string[] Transacao = File.ReadAllLines("transacao.csv");

            foreach (var item in Transacao)
            {
                if (item != null)
                {
                    string[] dadosDaTransacao = item.Split(";");
                    transacao           = new TransacaoViewModel();
                    transacao.IdUsuario = int.Parse(dadosDaTransacao[0]);
                    transacao.Preco     = float.Parse(dadosDaTransacao[1]);
                    transacao.Descricao = dadosDaTransacao[2];

                    listaDeTransacoes.Add(transacao);
                }
            }
            return(listaDeTransacoes);
        }
コード例 #3
0
        public static List <TransacaoViewModel> Listar()
        {
            List <TransacaoViewModel> transacaos = new List <TransacaoViewModel> ();
            TransacaoViewModel        modeloTransacaos;

            if (!File.Exists("Iniciar/transacoes.csv"))
            {
                return(null);
            }
            string[] transacaosArray = File.ReadAllLines("Iniciar/transacoes.csv");
            foreach (var item in transacaosArray)
            {
                if (item != null)
                {
                    string[] dadosDeCadaTransacao = item.Split(";");
                    if (dadosDeCadaTransacao[1].Length > 1)
                    {
                        modeloTransacaos               = new TransacaoViewModel();
                        modeloTransacaos.IdUsuario     = int.Parse(dadosDeCadaTransacao[0]);
                        modeloTransacaos.NomeUsuario   = dadosDeCadaTransacao[1];
                        modeloTransacaos.Valor         = float.Parse(dadosDeCadaTransacao[2]);
                        modeloTransacaos.Tipo          = dadosDeCadaTransacao[3];
                        modeloTransacaos.Descricao     = dadosDeCadaTransacao[4];
                        modeloTransacaos.DataTransacao = DateTime.Parse(dadosDeCadaTransacao[5]);
                        transacaos.Add(modeloTransacaos);
                    }
                }
            }

            return(transacaos);
        }
コード例 #4
0
        public static List <TransacaoViewModel> Listar()
        {
            List <TransacaoViewModel> listaDeTransacao = new List <TransacaoViewModel>();
            TransacaoViewModel        transacaoViewModel;

            if (!File.Exists("ArquivosCSV/transação.csv"))
            {
                return(null);
            }
            string[] transacao = File.ReadAllLines("ArquivosCSV/transação.csv");
            foreach (var item in transacao)
            {
                if (item != null)
                {
                    string[] dadosDeCadaTransacao = item.Split(";");
                    transacaoViewModel    = new TransacaoViewModel();
                    transacaoViewModel.Id = int.Parse(dadosDeCadaTransacao[0]);
                    transacaoViewModel.TipoDaTransacao      = dadosDeCadaTransacao[1];
                    transacaoViewModel.DescricaoDaTransacao = dadosDeCadaTransacao[2];
                    transacaoViewModel.ValorDaTransacao     = float.Parse(dadosDeCadaTransacao[3]);
                    transacaoViewModel.DataDaTransacao      = DateTime.Parse(dadosDeCadaTransacao[4]);
                    transacaoViewModel.IdUsuario            = int.Parse(dadosDeCadaTransacao[5]);
                    listaDeTransacao.Add(transacaoViewModel);
                }
            }
            return(listaDeTransacao);
        }
コード例 #5
0
        public List <TransacaoViewModel> Listar()
        {
            List <TransacaoViewModel> listaDeTransacoes = new List <TransacaoViewModel>();

            TransacaoViewModel transacaoViewModel;

            if (!File.Exists("transacoes.csv"))
            {
                return(null);
            }
            string[] transacoes = File.ReadAllLines("transacoes.csv");

            foreach (var item in transacoes)
            {
                if (item != null)
                {
                    string[] dadosDeCadaTransacao = item.Split(";");
                    transacaoViewModel                 = new TransacaoViewModel();
                    transacaoViewModel.Tipo            = dadosDeCadaTransacao[0];
                    transacaoViewModel.Valor           = double.Parse(dadosDeCadaTransacao[1]);
                    transacaoViewModel.Descricao       = dadosDeCadaTransacao[2];
                    transacaoViewModel.DataDaTransacao = DateTime.Parse(dadosDeCadaTransacao[3]);
                    listaDeTransacoes.Add(transacaoViewModel);
                }
            }
            return(listaDeTransacoes);
        }
コード例 #6
0
        public List <TransacaoViewModel> ListarTransacoes()
        {
            List <TransacaoViewModel> listaDeTransacoes = new List <TransacaoViewModel>();
            TransacaoViewModel        transacao;

            if (!File.Exists(DatabaseUtils.transacoes))
            {
                return(null);
            }

            string[] transacoes = File.ReadAllLines(DatabaseUtils.transacoes);
            foreach (var item in transacoes)
            {
                if (item != null)
                {
                    string[] dadosCadaTransacao = item.Split(";");
                    transacao               = new TransacaoViewModel();
                    transacao.Tipo          = dadosCadaTransacao[0];
                    transacao.Descricao     = dadosCadaTransacao[1];
                    transacao.DataTransacao = DateTime.Parse(dadosCadaTransacao[2]);
                    transacao.Valor         = double.Parse(dadosCadaTransacao[3]);
                    transacao.Nome          = dadosCadaTransacao[4];
                    listaDeTransacoes.Add(transacao);
                }
            }
            return(listaDeTransacoes);
        }// ListarTransacoes()
コード例 #7
0
        public static List <TransacaoViewModel> TrazerListaDeTransacoes()
        {
            List <TransacaoViewModel> ListaDeTransacoes = new List <TransacaoViewModel> ();
            TransacaoViewModel        transacao;

            string[] transacoes = File.ReadAllLines("transacoes.csv");
            if (!File.Exists("transacoes.csv"))
            {
                return(null);
            }

            foreach (var item in transacoes)
            {
                if (item != null)
                {
                    string[] dadosDaTransacao = item.Split(";");
                    transacao = new TransacaoViewModel();

                    transacao.Descricao     = dadosDaTransacao[0];
                    transacao.Valor         = double.Parse(dadosDaTransacao[1]);
                    transacao.TipoTransacao = dadosDaTransacao[2];

                    transacao.DataTransacao = DateTime.Parse(dadosDaTransacao[3]);

                    ListaDeTransacoes.Add(transacao);
                } //fim if null
            }     //fim foreach
            return(ListaDeTransacoes);
        }         // fim listar
コード例 #8
0
        }         // fim listar

        public static void GerarDocWord()
        {
            Document         doc       = new Document();
            Section          section   = doc.AddSection();
            Paragraph        Paragrafo = section.AddParagraph();
            var              ListaUser = UsuarioRepositorio.TrazerListaDeUsuarios();
            UsuarioViewModel usuario   = new UsuarioViewModel();
            var              transacao = new TransacaoViewModel();

            Paragrafo.AppendText("                                                                 Relatório das Minhas Transações                                                  ");
            // foreach (var item in ListaUser)
            // {
            //     if (item.Email.Equals(DadosUserLogado.Email) && item.Senha.Equals(DadosUserLogado.Senha) && item != null)
            //     {
            //Escrever relatório das transações do user
            foreach (var user in ListaUser)
            {
                if (user.Id.Equals(transacao.IdUsuarioCriador) && user != null)
                {
                    Paragrafo.AppendText($"Id Usuário Criador: {transacao.IdUsuarioCriador} - Tipo da Transação: {transacao.TipoTransacao} - Descrição: {transacao.Descricao} - Valor: {transacao.Valor} - Data da Transação: {transacao.DataTransacao}");
                }
            }
            //     }
            // }

            Paragrafo.AppendText("");
            doc.SaveToFile("ExtratoTransações.docx", FileFormat.Docx);
        }
コード例 #9
0
        } // fim inserir transacao

        public List <TransacaoViewModel> Listar()
        {
            List <TransacaoViewModel> listaDeTransacoes = new List <TransacaoViewModel> ();
            TransacaoViewModel        transacao;

            if (!File.Exists("transacoes.csv"))
            {
                return(null);
            }
            string[] transacoes = File.ReadAllLines("transacoes.csv");

            foreach (var item in transacoes)
            {
                string[] dadosDasTransacoes = item.Split(";");
                transacao           = new TransacaoViewModel();
                transacao.IdUsuario = dadosDasTransacoes[0];
                transacao.Id        = int.Parse(dadosDasTransacoes[1]);
                transacao.Tipo      = dadosDasTransacoes[2];
                transacao.Descricao = dadosDasTransacoes[3];
                transacao.Data      = DateTime.Parse(dadosDasTransacoes[4]);
                transacao.Valor     = float.Parse(dadosDasTransacoes[5]);
                listaDeTransacoes.Add(transacao);
            }
            return(listaDeTransacoes);
        } //fim listar
コード例 #10
0
        public void DeveOcorrerErroValidacao_ao_cadastrar_novas_transacoes()
        {
            var transacao = new TransacaoViewModel();

            var validatinResult = validator.Validate(transacao);

            Assert.Equal(false, validatinResult.IsValid);
        }
コード例 #11
0
        public static void Inserir(TransacaoViewModel transacaoTeste)
        {
            StreamWriter sw = new StreamWriter("Iniciar/transacoes.csv", true);

            transacaoTeste.DataTransacao = DateTime.Now;

            sw.WriteLine($"{transacaoTeste.IdUsuario};{transacaoTeste.NomeUsuario};{transacaoTeste.Valor};{transacaoTeste.Tipo};{transacaoTeste.Descricao};{transacaoTeste.DataTransacao}");
            sw.Close();
        }
コード例 #12
0
        public TransacaoViewModel InserirTransacao(TransacaoViewModel transacao)
        {
            List <TransacaoViewModel> listaDeTransacoes = ListarTransacoes();

            StreamWriter sw = new StreamWriter(DatabaseUtils.transacoes, true);

            sw.WriteLine($"{transacao.Tipo};{transacao.Descricao};{transacao.DataTransacao:dd/MM/yyyy};{transacao.Valor};{transacao.Nome}");
            sw.Close();
            return(transacao);
        }
コード例 #13
0
        public static void CadastrarTransacao()
        {
            string descricao;
            double valor;
            double confirmaValor;
            string tipoTransacao;


            MenuUtil.EscolhaTransacao();
            tipoTransacao = Console.ReadLine();

            if (tipoTransacao == "Despesa" + "Receita")
            {
                do
                {
                    System.Console.WriteLine("Digite um valor");
                    valor = double.Parse(Console.ReadLine());

                    System.Console.WriteLine("Confirme o valor");
                    confirmaValor = double.Parse(Console.ReadLine());
                } while (!ValidacaoUtil.ValidacaoValor(valor, confirmaValor));
                do
                {
                    System.Console.WriteLine("Descreva sua transação");
                    descricao = Console.ReadLine();
                    if (String.IsNullOrEmpty(descricao))
                    {
                        System.Console.WriteLine("Insira algo válido");
                    }
                }while (string.IsNullOrEmpty(descricao));

                TransacaoViewModel transacao = new TransacaoViewModel();

                transacao.Descricao     = descricao;
                transacao.Valor         = valor;
                transacao.TipoTransacao = tipoTransacao;
                transacao.DataTransacao = DateTime.Now;

                //INSERIR USUÁRIO
                TransacaoRepositorio.Inserir(transacao);

                //INSERIR USUÁRIO

                Console.ForegroundColor = ConsoleColor.Green;
                System.Console.WriteLine("Cadastro realizado com sucesso");
                Console.ResetColor();
            }
            else if (tipoTransacao != "Despesa" + "Receita")
            {
                System.Console.WriteLine("Volte sempre");
            }
        }
コード例 #14
0
        public TransacaoViewModel Inserir(TransacaoViewModel transacao)
        {
            List <TransacaoViewModel> listaDeTransacoes = new List <TransacaoViewModel>();

            transacao.DataDaTransacao = DateTime.Now;

            StreamWriter sw = new StreamWriter("transacoes.csv", true);

            sw.WriteLine($"{transacao.Tipo};{transacao.Valor};{transacao.Descricao};{transacao.DataDaTransacao}");
            sw.Close();

            return(transacao);
        }
コード例 #15
0
        // PUT: api/Transacao/5
        public void Put(TransacaoViewModel transacaoVW)
        {
            var conta = _transacaoApp.GetById(Convert.ToInt32(transacaoVW.Id));

            conta.Valor                  = Convert.ToDecimal(transacaoVW.Valor);
            conta.IdContaOrigem          = Convert.ToInt32(transacaoVW.IdContaOrigem);
            conta.IdContaDestino         = Convert.ToInt32(transacaoVW.IdContaDestino);
            conta.ValorContaOrigem       = Convert.ToDecimal(transacaoVW.ValorContaOrigem);
            conta.ValorContaDestino      = Convert.ToDecimal(transacaoVW.ValorContaDestino);
            conta.Estorno                = transacaoVW.Estorno;
            conta.CodigoTransacaoEstorno = transacaoVW.CodigoTransacaoEstorno;
            _transacaoApp.Update(conta);
        }
コード例 #16
0
        // Cadastrar transação

        public static void CadastrarTransacao(UsuarioViewModel usuario)
        {
            string tipo = "", descricao;
            float  valor;
            int    opcaoTipo;


            do
            {
                MenuUtil.TipoTransacao();
                opcaoTipo = int.Parse(Console.ReadLine());

                switch (opcaoTipo)
                {
                case 1:
                    //Despesa
                    tipo = "Despesa";
                    break;

                case 2:
                    //Receita
                    tipo = "Receita";
                    break;

                default:
                    System.Console.WriteLine("Opção Inválida");
                    break;
                }
            }while(opcaoTipo < 1 || opcaoTipo > 2);


            System.Console.WriteLine("Descreva sua transação");
            descricao = Console.ReadLine();

            System.Console.WriteLine("Digite o valor da transação:");
            valor = float.Parse(Console.ReadLine());

            TransacaoViewModel transacao = new TransacaoViewModel();

            transacao.Tipo      = tipo;
            transacao.Descricao = descricao;
            transacao.Valor     = valor;
            transacao.IdUsuario = usuario.Nome;

            transacaoRepositorio.Inserir(transacao);
            transacaoRepositorio.CriarArquivo();//estou criando / substituindo meu arquivo de word


            System.Console.WriteLine("Transação efetuada com sucesso");
        }//fim cadastrar transação
コード例 #17
0
        public static TransacaoViewModel Inserir(TransacaoViewModel transacao)
        {
            //Aqti
            List <TransacaoViewModel> listaDeUsuarios = Listar();


            StreamWriter sw = new StreamWriter("transacao.csv", true);

            sw.WriteLine($"{transacao.IdUsuario};{transacao.Preco};{transacao.Descricao};");

            sw.Close();

            return(transacao);
        }
コード例 #18
0
        public static void CadastrarTransacao(UsuarioViewModel usuario)
        {
            string descricao, StringOpcao = "";
            float  valor;
            int    opcao;

            do
            {
                Utils.MenuUtil.MenuTipoTarefa();
                opcao = int.Parse(Console.ReadLine());
            } while (opcao != 1 && opcao != 2);
            if (opcao == 1)
            {
                StringOpcao = "Receita (depósito)";
            }
            else if (opcao == 2)
            {
                StringOpcao = "Despesa (Saque)";
            }

            do
            {
                System.Console.Write("Digite a descrição da Transação: ");
                descricao = Console.ReadLine();
                if (string.IsNullOrEmpty(descricao))
                {
                    System.Console.WriteLine("Descrição Inválida");
                }
            } while (string.IsNullOrEmpty(descricao));

            do
            {
                System.Console.Write("Digite o valor da transação: ");
                valor = float.Parse(Console.ReadLine());
                if (valor <= 0)
                {
                    System.Console.WriteLine("Valor Inválido, o valor tem que ser positivo!");
                }
            } while (valor <= 0);

            TransacaoViewModel transacaoViewModel = new TransacaoViewModel();

            transacaoViewModel.TipoDaTransacao      = StringOpcao;
            transacaoViewModel.DescricaoDaTransacao = descricao;
            transacaoViewModel.ValorDaTransacao     = valor;
            transacaoViewModel.IdUsuario            = usuario.Id;

            TransacaoRepositorio.Inserir(transacaoViewModel);
            System.Console.WriteLine("Cadastro realizado com sucesso");
        }
コード例 #19
0
        // POST: api/Transacao
        public void Post(TransacaoViewModel transacaoVW)
        {
            var transacao = new Transacao
            {
                Valor                  = Convert.ToDecimal(transacaoVW.Valor),
                IdContaOrigem          = Convert.ToInt32(transacaoVW.IdContaOrigem),
                IdContaDestino         = Convert.ToInt32(transacaoVW.IdContaDestino),
                ValorContaOrigem       = Convert.ToDecimal(transacaoVW.ValorContaOrigem),
                ValorContaDestino      = Convert.ToDecimal(transacaoVW.ValorContaDestino),
                Estorno                = transacaoVW.Estorno,
                CodigoTransacaoEstorno = transacaoVW.CodigoTransacaoEstorno
            };

            _transacaoApp.Add(transacao);
        }
コード例 #20
0
        public static void CadastrarDespesa()
        {
            string descricao;
            double valorCredito;

            do
            {
                Console.ForegroundColor = ConsoleColor.DarkRed;
                System.Console.WriteLine("Descreva a transação (ex: Conta para pagar)       ");
                Console.ResetColor();
                descricao = Console.ReadLine();
                if (string.IsNullOrWhiteSpace(descricao))
                {
                    System.Console.WriteLine("Descreva a transação (ex: Conta para pagar)       ");
                }
            } while (string.IsNullOrWhiteSpace(descricao));

            do
            {
                Console.ForegroundColor = ConsoleColor.DarkRed;
                System.Console.WriteLine("Digite o valor que deseja creditar da sua conta:   ");
                Console.ResetColor();
                valorCredito = double.Parse(Console.ReadLine());
                if (valorCredito <= 0)
                {
                    System.Console.WriteLine("Valor inválido");
                }
                else
                {
                    continue;
                }
            } while (valorCredito <= 0);
            Console.ForegroundColor = ConsoleColor.Green;
            System.Console.WriteLine($"Você debitou: {valorCredito} reais da sua conta");
            Console.ResetColor();

            TransacaoViewModel transacaoCreditoViewModel = new TransacaoViewModel();

            transacaoCreditoViewModel.Descricao       = descricao;
            transacaoCreditoViewModel.ValorCredito    = valorCredito;
            transacaoCreditoViewModel.DataDaTransacao = DateTime.Now;


            transacaoRepositorio.InserirCredito(transacaoCreditoViewModel);
            Console.ForegroundColor = ConsoleColor.Green;
            System.Console.WriteLine("Transação efetuada com sucesso");
            Console.ResetColor();
        }
コード例 #21
0
        public static void CadastrarReceita()
        {
            float  preco;
            string descricao;

            Console.WriteLine("Digite um preço para a sua receita:");
            preco = float.Parse(Console.ReadLine());
            Console.WriteLine("Digite a descrição da receita:");
            descricao = Console.ReadLine();

            TransacaoViewModel transacao = new TransacaoViewModel();

            transacao.Descricao = descricao;
            transacao.Preco     = preco;

            TransacaoRepositorio.Inserir(transacao);
        }
コード例 #22
0
        public TransacaoViewModel InserirCredito(TransacaoViewModel credito)
        {
            int cont = 0;
            List <TransacaoViewModel> listaDeTransacao = Listar();

            if (listaDeTransacao != null)
            {
                cont = listaDeTransacao.Count;
            }

            credito.DataDaTransacao = DateTime.Now;
            StreamWriter sw = new StreamWriter("Transferencias.csv", true);

            sw.WriteLine($"{credito.Descricao};{credito.ValorCredito};{credito.DataDaTransacao}");
            sw.Close();
            return(credito);
        }
コード例 #23
0
        public static TransacaoViewModel Inserir(TransacaoViewModel transacao)
        {
            int contador = 0;

            List <TransacaoViewModel> listaDeTransacao = Listar();

            if (listaDeTransacao != null)
            {
                contador = listaDeTransacao.Count;
            }
            transacao.Id = contador + 1;
            transacao.DataDaTransacao = DateTime.Now;
            StreamWriter sw = new StreamWriter("ArquivosCSV/transação.csv", true);

            sw.WriteLine($"{transacao.Id};{transacao.TipoDaTransacao};{transacao.DescricaoDaTransacao};{transacao.ValorDaTransacao};{transacao.DataDaTransacao:dd/MM/yyyy};{transacao.IdUsuario}");
            sw.Close();

            return(transacao);
        }
コード例 #24
0
        public static TransacaoViewModel Inserir(TransacaoViewModel transacao)
        {
            /* int contador = 0;
             * if (ListaDeUsuarios != null)
             * {
             *  contador = ListaDeUsuarios.Count;
             * }
             *
             * usuario.id = contador + 1; */

            StreamWriter arquivo = new StreamWriter("transacoes.csv", true);

            arquivo.WriteLine($"{transacao.TipoTransacao}; {transacao.Descricao}; {transacao.Valor}; {transacao.DataTransacao}");
            arquivo.Close();
            return(transacao);

            //MÉTODO EM CONSTRUÇÃO!!!!!!!!!!!

            //VOLTR AQUI DPOIS
        }
コード例 #25
0
        public TransacaoViewModel Inserir(TransacaoViewModel transacao)
        {
            List <TransacaoViewModel> listaDeTransacoes = Listar();
            int contador = 0;

            if (listaDeTransacoes != null)
            {
                contador = listaDeTransacoes.Count;
            }
            transacao.Id   = contador + 1;
            transacao.Data = DateTime.Now;

            StreamWriter sw = new StreamWriter("produtos.csv", true);

            sw.WriteLine($"{transacao.Id};{transacao.Tipo};{transacao.Descricao};{transacao.Data};{transacao.Valor}");

            sw.Close();

            return(transacao);
        }// fim inserir transacao
コード例 #26
0
        public async Task CreateAsync_ReturnOkResult(double amaunt, string merchantId, TipoTransacaoEnum tipo)
        {
            var transacao = new TransacaoViewModel()
            {
                Amount = amaunt, MerchantId = merchantId, Type = tipo
            };

            // Arrange
            var mockServices = new Mock <ITransacaoAppServices>();

            mockServices.Setup(s => s.Insert(transacao));
            var controller = new FinancialOperationController();

            // Act
            var result = await controller.CreateAsync(transacao, mockServices.Object);

            // Assert
            var okResult = Assert.IsType <OkObjectResult>(result);

            Assert.Equal(StatusCodes.Status201Created, okResult.Value);
        }
コード例 #27
0
        public void Nao_deve_ocorrer_erro()
        {
            var cliente = new TransacaoViewModel()
            {
                Amount     = 1,
                Type       = TipoTransacaoEnum.Credito,
                Number     = 1,
                MerchantId = "a485a730-9912-4d9c-8d91-36c0f4413d73",
                Card       = new CartaoViewModel()
                {
                    CardBrand      = BandeiraCartaoEnum.Visa,
                    CardHolderName = "João das Couves",
                    CVV            = "123",
                    ExpirationDate = DateTime.Now.AddMonths(4),
                    Password       = "******"
                }
            };

            var validatinResult = validator.Validate(cliente);

            Assert.Equal(true, validatinResult.IsValid);
        }
コード例 #28
0
        public async Task CreateAsync_ReturnBadRequestResult(double amaunt, string merchantId, TipoTransacaoEnum tipo)
        {
            var transacao = new TransacaoViewModel()
            {
                Amount = amaunt, MerchantId = merchantId, Type = tipo
            };

            // Arrange
            var mockServices = new Mock <ITransacaoAppServices>();

            mockServices.Setup(s => s.Insert(transacao));
            var controller = new FinancialOperationController();

            controller.ModelState.AddModelError("Amaunt", "Deve ser informado maior que .10 centavos.");

            // Act
            var result = await controller.CreateAsync(transacao, mockServices.Object);

            // Assert
            var badRequest = Assert.IsType <BadRequestResult>(result);

            Assert.Equal(StatusCodes.Status400BadRequest, badRequest.StatusCode);
        }
コード例 #29
0
        public List <TransacaoViewModel> ListarDeposito()
        {
            List <TransacaoViewModel> extratoDeTransacoes = new List <TransacaoViewModel> ();
            TransacaoViewModel        creditoViewModel;

            if (!File.Exists("Depositos.csv"))
            {
                return(null);
            }
            string[] transacoes = File.ReadAllLines("Depositos.csv");
            foreach (var item in transacoes)
            {
                if (transacoes != null)
                {
                    string[] dadosDeCadaDeposito = item.Split(";");
                    creditoViewModel                 = new TransacaoViewModel();
                    creditoViewModel.Descricao       = dadosDeCadaDeposito[0];
                    creditoViewModel.ValorDeposito   = double.Parse(dadosDeCadaDeposito[1]);
                    creditoViewModel.DataDaTransacao = DateTime.Parse(dadosDeCadaDeposito[2]);
                    extratoDeTransacoes.Add(creditoViewModel);
                }
            }
            return(extratoDeTransacoes);
        }
コード例 #30
0
        public UsuarioViewModel CadastrarTransacao(UsuarioViewModel recuperado)
        {
            string tipo, descricao;
            float  valor;
            int    i     = 0;
            string teste = "";

            Console.Clear();
            do
            {
                if (i > 0)
                {
                    CoresUtils.MostrarMensagem("Digite um tipo válido", TipoMensagemEnum.ERRO);
                    System.Console.WriteLine("Pressione ENTER para continuar");
                    Console.ReadLine();
                    Console.Clear();
                }
                System.Console.WriteLine("Digite o tipo da transação (Despesa / Receita): ");
                tipo = Console.ReadLine();
                i++;
            } while (!tipo.Contains("D") && !tipo.Contains("d") && !tipo.Contains("R") && !tipo.Contains("r"));

            i = 0;

            Console.Clear();
            do
            {
                if (i > 0)
                {
                    CoresUtils.MostrarMensagem("Digite um valor válido", TipoMensagemEnum.ERRO);
                    System.Console.WriteLine("Pressione ENTER para continuar");
                    Console.ReadLine();
                    Console.Clear();
                }
                System.Console.WriteLine("Digite o valor da transação:");
                teste = Console.ReadLine();
                i++;
            } while (!float.TryParse(teste, out valor) && valor <= 0);

            if (tipo.Contains("R") || tipo.Contains("r"))
            {
                valor = valor * -1;
            }

            if (valor <= recuperado.Saldo)
            {
                if (tipo.Contains("D") || tipo.Contains("d"))
                {
                    recuperado.Saldo = recuperado.Saldo - valor;
                    tipo             = "DESPESA";
                }
                else if (tipo.Contains("R") || tipo.Contains("r"))
                {
                    valor            = valor * -1;
                    recuperado.Saldo = recuperado.Saldo + valor;
                    tipo             = "RECEITA";
                }

                i = 0;

                Console.Clear();

                System.Console.WriteLine("Descreva a transação:");
                descricao = Console.ReadLine();

                Console.Clear();

                TransacaoViewModel transacaoTeste = new TransacaoViewModel();
                transacaoTeste.Tipo        = tipo;
                transacaoTeste.Valor       = valor;
                transacaoTeste.Descricao   = descricao;
                transacaoTeste.NomeUsuario = recuperado.Nome;
                transacaoTeste.IdUsuario   = recuperado.Id;

                RepositorioTransacao.Inserir(transacaoTeste);

                CoresUtils.MostrarMensagem("Transação concluída com sucesso!", TipoMensagemEnum.SUCESSO);
                System.Console.WriteLine("Clique ENTER para continuar");
                Console.ReadLine();

                return(recuperado);
            }
            else
            {
                CoresUtils.MostrarMensagem("\nNão há saldo suficiente para esta transação!!!", TipoMensagemEnum.ERRO);
                System.Console.WriteLine("Pressione ENTER para continuar");
                Console.ReadLine();
                Console.Clear();
                return(recuperado);
            }
        }