static void Main(string[] args) { Uteis uteis = new Uteis(); int opc; do { Title = "CONTROLE FINANCEIRO"; Uteis.MontaMenu(); opc = Convert.ToInt32(ReadLine()); if (!(opc >= 1 && opc <= 6)) { Clear(); BackgroundColor = ConsoleColor.Red; ForegroundColor = ConsoleColor.White; Uteis.MontaHearder("OPÇÃO INVÁLIDA", 'X', 35); Uteis.MontaHearder("DIGITE UMA OPÇÃO CORRETA", 'X'); ResetColor(); } else { Clear(); uteis.Executar(opc); } } while (opc != 6); }
static void Main(string[] args) { Program p = new Program(); int opcao; do { Uteis.MontaMenu(); opcao = Convert.ToInt32(Console.ReadLine()); if (opcao < 1 || opcao > 6) { Console.Clear(); Console.BackgroundColor = ConsoleColor.Red; Console.ForegroundColor = ConsoleColor.White; Uteis.MontaHeader("INFORME UMA OPÇÃO VALIDA", 'X', 30); Console.ResetColor(); } else { Console.Clear(); switch (opcao) { case 1: Uteis.MontaHeader("LISTAGEM DE CONTAS"); p.contas = new List <Conta>(); p.contas = p.conta.ListarTodos(); ListarContas(); Console.ReadLine(); Console.Clear(); break; case 2: Uteis.MontaHeader("NOVA CONTA"); CadastrarConta(); Console.ReadLine(); Console.Clear(); break; case 3: Console.WriteLine("Editar"); break; case 4: Console.WriteLine("Excluir"); break; case 5: Uteis.MontaHeader("RELATÓRIO"); GerarRelatorio(); Console.ReadLine(); Console.Clear(); break; } } } while (opcao != 6); void GerarRelatorio() { Console.Write("Digite a data inicial: "); DateTime dataInicial = Convert.ToDateTime(Console.ReadLine()); Console.Write("Digite a data final: "); DateTime dataFinal = Convert.ToDateTime(Console.ReadLine()); p.contas = new List <Conta>(); p.contas = p.conta.ListarTodos(dataInicial, dataFinal); ListarContas(); } void ListarContas() { ConsoleTable table = new ConsoleTable("Id", "Descrição", "Tipo", "Valor", "Data Vencimento"); foreach (var cont in p.contas) { table.AddRow(cont.Id, cont.Descricao, cont.Tipo.Equals('R') ? "Receber" : "Pagar", cont.Valor, cont.DataVencimento); } table.Write(); } void ListarCategorias() { ConsoleTable tableCategorias = new ConsoleTable("Id", "Nome"); foreach (var cat in p.categorias) { tableCategorias.AddRow(cat.Id, cat.Nome); } tableCategorias.Write(); } void CadastrarConta() { var descricaoConta = ""; do { Console.Write("Informe a descrição da conta: "); descricaoConta = Console.ReadLine(); if (descricaoConta != null && descricaoConta.Equals("")) { Console.BackgroundColor = ConsoleColor.Red; Console.ForegroundColor = ConsoleColor.White; Uteis.MontaHeader("INFORME UMA DESCRIÇÃO VALIDA", 'X', 30); Console.ResetColor(); } } while (descricaoConta.Equals("")); Console.Write("Informe o valor da conta: "); double valorConta = Convert.ToDouble(Console.ReadLine()); Console.Write("Informe a data de vencimento da conta (dd/mm/aaaa): "); DateTime dataVencimentoConta = Convert.ToDateTime(Console.ReadLine()); Console.Write("Informe o tipo (R para Receber e P para pagar)"); char tipoConta = Convert.ToChar(Console.ReadLine()); Console.WriteLine("Selecione a categoria da conta"); p.categorias = new List <Categoria>(); p.categorias = p.categoria.ListarTodos(); ListarCategorias(); Console.Write("Informe o código da categoria desejada:"); int categoriaConta = Convert.ToInt32(Console.ReadLine()); Categoria categoriaCadastro = p.categoria.GetCategoria(categoriaConta); Conta conta = new Conta() { Categoria = categoriaCadastro, DataVencimento = dataVencimentoConta, Descricao = descricaoConta, Valor = valorConta, Tipo = tipoConta }; p.conta.Salvar(conta); Console.BackgroundColor = ConsoleColor.DarkGreen; Console.ForegroundColor = ConsoleColor.White; Uteis.MontaHeader("CADASTRO REALIZADO COM SUCESSO", 'X', 30); Console.ResetColor(); } }