public static void TransacoesWord(string nome, int id, float saldo) { List <TransacaoViewModel> transacoes = RepositorioTransacao.Listar(); foreach (var iniciar in transacoes) { if (iniciar != null && iniciar.IdUsuario.Equals(id)) { Document doc = new Document(); Section section = doc.AddSection(); Paragraph Para = section.AddParagraph(); float inicio = saldo; string nomeMaisculo = nome.ToUpper(); Para.AppendText($" LISTAGEM DAS TRANSAÇÕES DO USUÁRIO: {nomeMaisculo}\n\n\n"); Para.AppendText($"TRANSAÇÕES:\n\n"); foreach (var item in transacoes) { if (item != null && item.IdUsuario.Equals(id)) { inicio += item.Valor; } } foreach (var item in transacoes) { if (item != null && item.IdUsuario.Equals(id)) { Para.AppendText($"---------------------------------------------------------------------------------------------------------------------------\n"); Para.AppendText($"Valor: R$ {item.Valor}\n"); Para.AppendText($"Tipo: {item.Tipo}\n"); Para.AppendText($"Descrição: {item.Descricao}\n"); Para.AppendText($"Data da Transação: {item.DataTransacao}\n"); Para.AppendText($"---------------------------------------------------------------------------------------------------------------------------\n"); Para.AppendText($"\n SALDO ATUAL: R$ {inicio -= item.Valor}\n\n"); } } Para.AppendText($" SALDO FINAL: R$ {saldo}"); doc.SaveToFile("Transações.docx", FileFormat.Docx); CoresUtils.MostrarMensagem("\nArquivo criado com sucesso!", TipoMensagemEnum.SUCESSO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); } else { CoresUtils.MostrarMensagem("O arquivo não foi feito, já que não há transações em seu nome", TipoMensagemEnum.ALERTA); System.Console.WriteLine("Clique ENTER para continuar"); Console.ReadLine(); break; } } }
public static UsuarioViewModel LoginUsuario() { int i = 0; string email, senha; do { Console.Clear(); if (i > 0) { CoresUtils.MostrarMensagem("Digite um e-mail válido", TipoMensagemEnum.ERRO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); } System.Console.WriteLine("Digite seu e-mail:"); email = Console.ReadLine(); i++; } while (!email.Contains("@") && !email.Contains(".")); i = 0; Console.Clear(); do { if (i > 0) { CoresUtils.MostrarMensagem("Digite uma senha válida", TipoMensagemEnum.ERRO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); } System.Console.WriteLine("Digite sua senha: (min. 8)"); senha = Console.ReadLine(); i++; } while (senha.Length < 8); UsuarioViewModel usuarioRecuperado = repositorioUsuario.BuscarUsuario(email, senha); return(usuarioRecuperado); }
public static void ExibirUsuarios() { List <UsuarioViewModel> usuarios = RepositorioUsuario.Listar(); foreach (var item in usuarios) { if (item != null) { System.Console.WriteLine($"----------------------------------------"); System.Console.WriteLine($"Id do Usuário: {item.Id}"); System.Console.WriteLine($"Nome: {item.Nome}"); System.Console.WriteLine($"E-mail: {item.Email}"); System.Console.WriteLine($"Senha: {item.Senha}"); System.Console.WriteLine($"Data de nascimento: {item.DataDeNascimento}"); System.Console.WriteLine($"Saldo: {item.Saldo}"); System.Console.WriteLine($"Tipo de Usuário: {item.Tipo}"); System.Console.WriteLine($"----------------------------------------"); } } CoresUtils.MostrarMensagem("Fim dos usuários", TipoMensagemEnum.ERRO); System.Console.WriteLine("Clique ENTER para continuar"); Console.ReadLine(); }
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); } }
static void Main(string[] args) { bool querSair = false; TransacaoViewController transacaoViewController = new TransacaoViewController(); var repositorioUsuario = new RepositorioUsuario(); do { Console.Clear(); MenuUtils.MenuDeslogado(); string codigo = Console.ReadLine(); switch (codigo) { case "1": UsuarioViewController.CadastrarUsuario(); break; case "2": UsuarioViewModel usuarioRecuperado = UsuarioViewController.LoginUsuario(); if (usuarioRecuperado != null) { if (usuarioRecuperado.Tipo.Equals("Comum")) { Console.Clear(); CoresUtils.MostrarMensagem($" Bem-Vindo {usuarioRecuperado.Nome}", TipoMensagemEnum.SUCESSO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); do { MenuUtils.MenuLogado(); codigo = Console.ReadLine(); switch (codigo) { case "1": transacaoViewController.CadastrarTransacao(usuarioRecuperado); repositorioUsuario.Editar(usuarioRecuperado); break; case "2": TransacaoViewController.TransacoesWord(usuarioRecuperado.Nome); CoresUtils.MostrarMensagem("\nArquivo criado com sucesso!", TipoMensagemEnum.SUCESSO); System.Console.WriteLine("Pressione ENTER para continuar"); break; case "3": TransacaoViewController.ExibirTransacao(usuarioRecuperado.Nome); break; case "0": CoresUtils.MostrarMensagem("Obrigado pela preferência", TipoMensagemEnum.SUCESSO); querSair = true; break; default: CoresUtils.MostrarMensagem("Digite um valor válido!", TipoMensagemEnum.ALERTA); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); break; } } while (!querSair); } else { Console.Clear(); CoresUtils.MostrarMensagem($" Bem-Vindo {usuarioRecuperado.Nome}", TipoMensagemEnum.SUCESSO); System.Console.WriteLine(" Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); do { MenuUtils.MenuADM(); codigo = Console.ReadLine(); switch (codigo) { case "1": UsuarioViewController.ExibirUsuarios(); break; case "2": UsuarioViewController.UsuariosWord(); CoresUtils.MostrarMensagem("\nArquivo criado com sucesso!", TipoMensagemEnum.SUCESSO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); break; case "3": RepositorioUsuario.Zipar(); CoresUtils.MostrarMensagem("\nArquivo criado com sucesso!", TipoMensagemEnum.SUCESSO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); break; case "0": CoresUtils.MostrarMensagem("Obrigado pela preferência", TipoMensagemEnum.SUCESSO); querSair = true; break; default: CoresUtils.MostrarMensagem("Digite um valor válido!", TipoMensagemEnum.ALERTA); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); break; } } while (!querSair); } } else { CoresUtils.MostrarMensagem("Usuário ou senha inválidos", TipoMensagemEnum.ALERTA); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); } break; case "0": CoresUtils.MostrarMensagem("Obrigado pela preferência", TipoMensagemEnum.SUCESSO); querSair = true; break; default: CoresUtils.MostrarMensagem("Digite um valor válido!", TipoMensagemEnum.ALERTA); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); break; } } while (!querSair); }
public static void CadastrarUsuario() { string nome = "", email = "", senha = "", teste = "", testesenha = ""; DateTime nascimento; int i = 0; DateTime maiorDeIdade = DateTime.Parse("15/05/2001"); int verificacao = 0; Console.Clear(); do { if (i > 0) { verificacao = 0; CoresUtils.MostrarMensagem("Digite um nome diferente, já temos um usuário com este nome", TipoMensagemEnum.ERRO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); } System.Console.WriteLine("Digite seu nome: "); nome = Console.ReadLine(); i++; UsuarioViewModel testador = repositorioUsuario.TestarNome(nome); if (testador != null) { verificacao++; } } while (nome.Length < 4 || verificacao != 0); i = 0; Console.Clear(); do { if (i > 0) { verificacao = 0; CoresUtils.MostrarMensagem("E-mail inválido ou já utilizado para cadastro", TipoMensagemEnum.ERRO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); } System.Console.WriteLine("Digite seu e-mail:"); email = Console.ReadLine(); i++; UsuarioViewModel testador = repositorioUsuario.TestarEmail(email); if (testador != null) { verificacao++; } } while (!email.Contains("@") && !email.Contains(".") || verificacao != 0); i = 0; Console.Clear(); do { if (i > 0) { CoresUtils.MostrarMensagem("Senha inválida ou não corresponderam", TipoMensagemEnum.ERRO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); } System.Console.WriteLine("Digite sua senha: (min. 8)"); senha = Console.ReadLine(); System.Console.WriteLine("Digite sua senha novamente: (min. 8)"); testesenha = Console.ReadLine(); i++; } while (senha.Length < 8 || senha != testesenha); i = 0; Console.Clear(); do { if (i > 0) { CoresUtils.MostrarMensagem("Digite uma data válida", TipoMensagemEnum.ERRO); System.Console.WriteLine("Pressione ENTER para continuar"); Console.ReadLine(); Console.Clear(); } System.Console.WriteLine("Digite sua data de nascimento: (você precisa ser maior de idade)"); teste = Console.ReadLine(); i++; } while (!DateTime.TryParse(teste, out nascimento) || nascimento > maiorDeIdade); UsuarioViewModel usuarioTeste = new UsuarioViewModel(); usuarioTeste.Nome = nome; usuarioTeste.Email = email; usuarioTeste.Senha = senha; usuarioTeste.DataDeNascimento = nascimento; RepositorioUsuario.Inserir(usuarioTeste); CoresUtils.MostrarMensagem("Usuário cadastrado com sucesso!", TipoMensagemEnum.SUCESSO); System.Console.WriteLine("Clique ENTER para continuar"); Console.ReadLine(); }