public static List <TransacoesViewModel> TrazerListaDeTransacoes()
        {
            List <TransacoesViewModel> ListaDeTransacoes = new List <TransacoesViewModel>();
            TransacoesViewModel        transacao;

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

            foreach (var usuario in transacoes)
            {
                if (usuario != null)
                {
                    string[] dadosDaTransacao = usuario.Split(";");
                    transacao = new TransacoesViewModel();
                    transacao.TipoTransacao    = dadosDaTransacao[0];
                    transacao.Descricao        = dadosDaTransacao[1];
                    transacao.Valor            = double.Parse(dadosDaTransacao[2]);
                    transacao.DataTransacao    = DateTime.Parse(dadosDaTransacao[3]);
                    transacao.IdUsuarioCriador = int.Parse(dadosDaTransacao[4]);
                    ListaDeTransacoes.Add(transacao);
                } //fim if null
            }     //fim foreach
            return(ListaDeTransacoes);
        }         // fim listar
        }         // fim listar

        public static Document GerarDocWord(UsuarioViewModel DadosUserLogado)
        {
            Document            doc       = new Document();
            Paragraph           Para      = doc.AddSection().AddParagraph();
            var                 ListaUser = UsuarioRepositorio.TrazerListaDeUsuario();
            UsuarioViewModel    usuario   = new UsuarioViewModel();
            TransacoesViewModel transacao = new TransacoesViewModel();

            Para.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)
                {
                    Para.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}");
                }
            }
            //     }
            // }
            doc.SaveToFile("ExtratoMinhasTransações.docx");
            return(doc);
        }
        public ActionResult Transferencia()
        {
            var model = new TransacoesViewModel
            {
                ContasOrigem = ObterContas()
            };

            return(View(model));
        }
        public static TransacoesViewModel Inserir(TransacoesViewModel transacao, UsuarioViewModel UserRec)
        {
            transacao.IdUsuarioCriador = UserRec.Id; // Id da transação é igual a do usuário logado

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

            arquivo.WriteLine($"{transacao.TipoTransacao}; {transacao.Descricao}; {transacao.Valor}; {transacao.DataTransacao}; {transacao.IdUsuarioCriador}");
            arquivo.Close();
            return(transacao);
            // using xxxxxx{   USA UMA BIBLIOTECA EM UM LOCAL ESPECÍFICO

            // }
        }
        public ActionResult Transferencia(TransacoesViewModel model)
        {
            try
            {
                _transacoesServicoAplicacao.Transferencia(model.IdContaOrigem, model.IdContaDestino, Convert.ToDecimal(model.Valor));
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ViewBag.msg = ex.Message;
            }

            model.ContasOrigem = ObterContas();
            return(View(model));
        }
Example #6
0
        public async Task <IActionResult> Extrato([FromRoute] int Id, TransacoesQuery filtros)
        {
            if (!HttpContext.Session.Keys.Any())
            {
                return(RedirectToAction("Index", "Login", new { area = "" }));
            }
            else
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                else
                {
                    filtros          = filtros ?? new TransacoesQuery();
                    filtros.PorConta = Id.ToString();
                    TransacoesViewModel vm = new TransacoesViewModel
                    {
                        Filtros = filtros
                    };
                    await vm.GetConta(Id);

                    try
                    {
                        await vm.GetTransacoes();
                    }
                    catch (Exception ex)
                    {
                        ViewBag.Error = ex;
                    }


                    string nomePessoa = HttpContext.Session.GetString("nome");
                    string genero     = HttpContext.Session.GetString("genero") == "masculino" ? "Sr." : "Sra.";
                    ViewBag.Pessoa = genero + " " + nomePessoa;

                    return(View(vm));
                }
            }
        }
Example #7
0
        public async Task <IActionResult> Index(TransacoesQuery filtros)
        {
            if (!HttpContext.Session.Keys.Any())
            {
                return(RedirectToAction("Index", "Login", new { area = "" }));
            }
            else
            {
                ViewBag.Id          = HttpContext.Session.GetInt32("Id").Value;
                filtros             = filtros ?? new TransacoesQuery();
                filtros.PorPessoaId = ViewBag.Id;

                TransacoesViewModel vm = new TransacoesViewModel
                {
                    Filtros = filtros
                };
                try
                {
                    await vm.GetTransacoes();
                }
                catch (Exception ex)
                {
                    ViewBag.Error = ex;
                }
                try
                {
                    await vm.GetContas(HttpContext.Session.GetInt32("Id").Value);
                }
                catch (Exception ex)
                {
                    ViewBag.ContaError = ex;
                }

                string nomePessoa = HttpContext.Session.GetString("nome");
                string genero     = HttpContext.Session.GetString("genero") == "masculino" ? "Sr." : "Sra.";
                ViewBag.Pessoa = genero + " " + nomePessoa;

                return(View(vm));
            }
        }
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                TransacoesViewModel viewModel = new TransacoesViewModel();
                await viewModel.GetTransacoes();

                DataContext = viewModel;
            }
            catch (Exception ex)
            {
                ContentDialog transacoesResponse = new ContentDialog()
                {
                    CloseButtonText = "Fechar"
                };
                transacoesResponse.Title   = "Falha na requisição";
                transacoesResponse.Content = ex.Message;
                var popups = VisualTreeHelper.GetOpenPopups(Window.Current);
                if (!popups.Any())
                {
                    await transacoesResponse.ShowAsync();
                }
            }
        }
Example #9
0
        public static void CadastrarTransacao(UsuarioViewModel UserLogado)
        {
            string descricao;
            double valor, confirmaValor;
            string tipoTransacao;

            do
            {
                MenuUtil.EscolhaTransacao();
                int codigo = int.Parse(Console.ReadLine());
                switch (codigo)
                {
                case 1:
                    tipoTransacao = "Despesa";
                    break;

                case 2:
                    tipoTransacao = "Receita";
                    break;

                default:
                    System.Console.WriteLine("Código Inválido");
                    Thread.Sleep(2000);
                    tipoTransacao = "null";
                    break;
                }
            } while (tipoTransacao.Equals("null"));  // Fim Tipo Transação

            do
            {
                System.Console.Write("Digite o Valor da Transação: ");
                valor = double.Parse(Console.ReadLine());
                System.Console.Write("Confirme o valor da Transação: ");
                confirmaValor = double.Parse(Console.ReadLine());

                if (!ValidacoesUtil.ValidarValorTransacao(valor, confirmaValor))  //se for false
                {
                    System.Console.WriteLine("Valores Incorretos, redigite-os");
                }
            } while (!ValidacoesUtil.ValidarValorTransacao(valor, confirmaValor));  // Fim do Valor Transação

            do
            {
                System.Console.WriteLine("Escreva a descrição da Transação: ");
                descricao = Console.ReadLine();  // VALIDAR CASO ELE NÃO DIGITOU NADA
                if (string.IsNullOrEmpty(descricao))
                {
                    System.Console.WriteLine("Escreva Algo Válido ");
                    Thread.Sleep(2000);
                }
            } while (string.IsNullOrEmpty(descricao));  //Fim da descrição

            TransacoesViewModel transacao = new TransacoesViewModel();

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

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

            Console.ForegroundColor = ConsoleColor.Green;
            System.Console.WriteLine("Cadastro realizado com sucesso");
            Console.ResetColor();
            //------
        }