Ejemplo n.º 1
0
        public static void SubMenuExibir(Sistema sistema)
        {
            string escolha;

            do
            {
                Console.Clear();
                Console.WriteLine("\nEscolha uma das opções abaixo:\n");
                Console.WriteLine("1) Exibir veiculos cadastrados");
                Console.WriteLine("2) Exibir viagens cadastradas");
                Console.WriteLine("3) Exibir os veiculos na estrada");
                Console.WriteLine("4) Exibir os relatórios");
                Console.WriteLine("5) Exibir um relatório específico");
                Console.WriteLine("9) Voltar ao menu anterior");
                Console.WriteLine("0) Sair");
                Console.Write("\nOpção escolhida: ");
                escolha = Console.ReadLine();

                Console.Clear();

                switch (escolha)
                {
                case "0":

                    MensagensComDelay.MensagemSairPrograma();
                    Environment.Exit(0);
                    break;

                case "1":

                    if (sistema.Veiculos.Count == 0)
                    {
                        MensagensComDelay.MensagemSemVeiculoNaLista();
                    }

                    else
                    {
                        VeiculoCore.MostraVeiculosNaLista(sistema);
                    }

                    break;

                case "2":

                    if (sistema.Viagens.Count == 0)
                    {
                        MensagensComDelay.MensagemSemViagemNaLista();
                    }

                    else
                    {
                        ViagemCore.MostraViagensNaLista(sistema);
                    }

                    break;

                case "3":

                    if (sistema.VeiculosNaEstrada.Count == 0)
                    {
                        MensagensComDelay.MensagemSemVeiculosNaEstrada();
                    }

                    else
                    {
                        VeiculoNaEstradaCore.MostraVeiculosNaEstradaCadastrados(sistema);
                    }

                    break;

                case "4":

                    if (sistema.Relatorios.Count == 0)
                    {
                        MensagensComDelay.MensagemSemRelatorioNaLista();
                    }

                    else
                    {
                        RelatorioCore.MostraRelatorios(sistema);
                        Console.WriteLine("Aperte qualquer tecla para continuar.");
                        Console.ReadKey();
                    }

                    break;

                case "5":

                    if (sistema.Relatorios.Count == 0)
                    {
                        MensagensComDelay.MensagemSemRelatorioNaLista();
                    }

                    else
                    {
                        RelatorioCore.MostraRelatorios(sistema);
                        Relatorio relatorio;

                        do
                        {
                            relatorio = RelatorioCore.EncontrarRelatorioNaLista(sistema);

                            if (relatorio == null)
                            {
                                Console.ForegroundColor = ConsoleColor.Red;
                                Console.WriteLine("\nNão foi encontrado nem um relatorio com esse codigo!");
                                Console.ForegroundColor = ConsoleColor.White;
                            }
                        } while (relatorio == null);

                        Console.Clear();
                        RelatorioCore.ImprimeInformacoesCompletasRelatorio(relatorio);
                    }

                    break;

                case "9":
                    break;

                default:
                    MensagensComDelay.MensagemEscolhaInvalida();
                    break;
                }
            } while (escolha != "9");
        }