Exemplo n.º 1
0
        /// <summary>
        /// Método que recebe uma aula do utilizador
        /// </summary>
        /// <returns></returns>
        static Aula RecebeAula()
        {
            #region Variaveis

            DateTime          dataAux;
            int               numeroDocenteAux, numeroSala, unidadeCurricularAux;
            string            nomeTurmaAux;
            UnidadeCurricular unidadeCurricular;
            Aula              aula;

            #endregion

            // Requista informação ao utilizador
            Console.Write("\n - Insira uma data para a aula no formato (AAAA-MM-DD HH:MI): ");
            dataAux = DateTime.Parse(Console.ReadLine());

            Console.Write("\n - Insira o numero do docente responsavel pela aula: ");
            numeroDocenteAux = int.Parse(Console.ReadLine());


            // Se o docente não existir, sai
            if (!ValidaDadosOutput.VerificaSeDocenteExiste(numeroDocenteAux))
            {
                throw new Exception("\n - O docente não existe ! Crie primeiro o Docente!");
            }


            Console.Write("\n - Insira o numero da sala para a aula: ");
            numeroSala = int.Parse(Console.ReadLine());

            Console.Write("\n - Insira o nome da turma: ");
            nomeTurmaAux = Console.ReadLine();


            // Se a turma não existir, sai
            if (!ValidaDadosOutput.VerificaSeTurmaExiste(nomeTurmaAux))
            {
                throw new Exception("\n - A turma não existe ! Crie primeiro a Turma!");
            }



            Console.Write("\n - Qual a unidade curricular ?  ");
            Console.Write("\n ( 1 - LP, 2 - FF, 3 - MN, 4 - Estatistica, 5 - AED ): ");
            unidadeCurricularAux = int.Parse(Console.ReadLine());



            // Atribui a unidadeCurricular correcta
            switch (unidadeCurricularAux)
            {
            case 1:
                unidadeCurricular = UnidadeCurricular.LP;
                break;

            case 2:
                unidadeCurricular = UnidadeCurricular.FF;
                break;

            case 3:
                unidadeCurricular = UnidadeCurricular.MN;
                break;

            case 4:
                unidadeCurricular = UnidadeCurricular.Estatistica;
                break;

            case 5:
                unidadeCurricular = UnidadeCurricular.AED;
                break;

            default:
                Console.WriteLine("\n - Algo correu mal com a unidade curricular da aula !");
                Console.WriteLine(" - Foi assumido que a unidade curricular não esta definida !");
                unidadeCurricular = UnidadeCurricular.naoDefinido;
                break;
            }

            // Devolve Aula
            return(aula = new Aula(dataAux, numeroDocenteAux, numeroSala, nomeTurmaAux, unidadeCurricular));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Método Principal (Main)
        /// </summary>
        /// <param name="args"></param>
        public static void Main(string[] args)
        {
            #region Variaveis

            int       opcaoEscolhida;
            Aluno     alunoAux;
            Docente   docenteAux;
            int       pesquisaAux, pesquisaAux2;
            string    nomeTurmaAux, nomeCursoAux;
            const int MAXTURMA = 30;
            int       numeroAlunoAux;
            int[]     numerosAlunos = new int[MAXTURMA];
            int[]     conjuntoAlunos;
            Aula      aulaAux;
            Aula[]    conjuntoAulas;

            #endregion

            // Ciclo para correr o Menu
            do
            {
                Console.Clear();
                opcaoEscolhida = Menu();

                switch (opcaoEscolhida)
                {
                // Inserir um aluno
                case 1:

                    #region RecebeAluno

                    alunoAux = RecebeAluno();

                    // Tenta inserir o aluno
                    try
                    {
                        ValidaDadosInput.InsereAluno(alunoAux);
                        Console.WriteLine("\n - Aluno Inserido com exito!");
                        Console.ReadKey();
                    }

                    // Se não conseguir apresenta o erro
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                    }

                    #endregion

                    break;


                // Inserir um docente
                case 2:

                    #region InsereDocente

                    docenteAux = RecebeDocente();

                    // Tenta inserir o docente
                    try
                    {
                        ValidaDadosInput.InsereDocente(docenteAux);
                        Console.WriteLine("\n - Docente Inserido com exito!");
                        Console.ReadKey();
                    }

                    // Se não conseguir apresenta o erro
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                    }

                    #endregion

                    break;


                // Consulta de informação
                case 3:

                    #region ConsultaInformacao

                    Console.Write("\n - Deseja consultar um aluno (1) ou professor (2) ? ");
                    pesquisaAux2 = int.Parse(Console.ReadLine());

                    // Se desejar pesquisar um aluno
                    if (pesquisaAux2 == 1)
                    {
                        Console.Write("\n - Insira o numero do aluno que deseja pesquisar: ");
                        pesquisaAux = int.Parse(Console.ReadLine());


                        // Tentar consultar e apresentar a informação
                        try
                        {
                            alunoAux = ValidaDadosOutput.PesquisaAluno(pesquisaAux);

                            Console.Clear();
                            Console.WriteLine(" Informação do aluno nº{0}", pesquisaAux);
                            Console.WriteLine(@"
Nome: {0}
Propinas pagas ? {1} ", alunoAux.NomePessoa, alunoAux.PropinasRegularizadas);

                            Console.ReadKey();
                        }

                        // Se não lança erros
                        catch (Exception erro)
                        {
                            Console.WriteLine(erro.Message);
                            Console.ReadKey();
                        }
                    }


                    // Se desejar pesquisar um docente
                    if (pesquisaAux2 == 2)
                    {
                        Console.Write("\n - Insira o numero do docente que deseja pesquisar: ");
                        pesquisaAux = int.Parse(Console.ReadLine());


                        // Tenta consultar
                        try
                        {
                            docenteAux = ValidaDadosOutput.PesquisaDocente(pesquisaAux);

                            Console.Clear();
                            Console.WriteLine(" Informação do Docente nº{0}", pesquisaAux);
                            Console.WriteLine(@"
Nome: {0}
Grau Academico: {1} ", docenteAux.NomePessoa, docenteAux.GrauAcademico);

                            Console.ReadKey();
                        }

                        // Se não lança erro
                        catch (Exception erro)
                        {
                            Console.WriteLine(erro.Message);
                            Console.ReadKey();
                        }
                    }


                    // Se não inserir uma opção correcta
                    else
                    {
                        Console.WriteLine(" - Opção de pesquisa não valida !");
                    }

                    #endregion

                    break;

                // Criar uma turma
                case 4:

                    #region CriaTurma

                    // Requista informação
                    Console.Write("\n - Insira o nome da turma: ");
                    nomeTurmaAux = Console.ReadLine();

                    Console.Write("\n - Insira o nome do curso que deseja inserir a turma: ");
                    nomeCursoAux = Console.ReadLine().ToUpper();

                    Console.Write("\n - Insira o numero de aluno para adicionar a turma (0 para terminar): ");
                    numeroAlunoAux = int.Parse(Console.ReadLine());

                    for (int i = 0; i < MAXTURMA; i++)
                    {
                        // Se for inserido o 0 sai
                        if (numeroAlunoAux == 0)
                        {
                            break;
                        }


                        // Verifica se o aluno existe na base de dados
                        if (ValidaDadosOutput.VerificaSeAlunoExiste(numeroAlunoAux))
                        {
                            numerosAlunos[i] = numeroAlunoAux;
                        }


                        // Se não insere o numero
                        else
                        {
                            Console.WriteLine(" - O aluno inserido não existe !");
                            Console.ReadKey();
                        }

                        // Requisita o proximo numero
                        Console.Write("\n - Insira o numero de aluno para adicionar a turma (0 para terminar): ");
                        numeroAlunoAux = int.Parse(Console.ReadLine());
                    }

                    // Tenta adicionar a turma
                    try
                    {
                        ValidaDadosInput.CriaTurma(nomeTurmaAux, nomeCursoAux, numerosAlunos);
                    }

                    // Se não conseguir apresenta o motivo
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.WriteLine("\n\n" + erro);
                        Console.ReadKey();
                    }

                    #endregion

                    break;


                // Lista uma turma
                case 5:

                    #region ListaTurma

                    // Requisita informação ao utilizador
                    Console.Write("\n - Insira o nome da turma que deseja listar os alunos: ");
                    nomeTurmaAux = Console.ReadLine();

                    Console.Write("\n - Insira o nome do curso: ");
                    nomeCursoAux = Console.ReadLine().ToUpper();


                    // Tenta requistar a informação
                    try
                    {
                        conjuntoAlunos = ValidaDadosOutput.DevolveConjuntoAlunos(nomeTurmaAux, nomeCursoAux);
                    }


                    // Se acorrer um erro
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                        break;
                    }


                    // Apresenta os numeros
                    Console.Clear();
                    Console.WriteLine(" - Alunos da turma {0}", nomeTurmaAux);

                    foreach (int numero in conjuntoAlunos)
                    {
                        // Se o numero for 0
                        if (numero == 0)
                        {
                            break;
                        }

                        Console.WriteLine(" - " + numero);
                    }

                    Console.ReadKey();

                    #endregion

                    break;


                // Cria uma nova aula
                case 6:

                    #region CriarAula

                    // Tenta receber uma aula
                    try
                    {
                        aulaAux = RecebeAula();
                    }


                    // Se não conseguir, apresenta erro e sai do case
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                        break;
                    }

                    // Recebe o nome do curso que desejamos inserir a aula
                    Console.Write("\n - Insira o Curso que deseja inserir a aula: ");
                    nomeCursoAux = Console.ReadLine().ToUpper();

                    // Tenta adicionar a aula
                    try
                    {
                        if (ValidaDadosInput.InsereAula(aulaAux, nomeCursoAux))
                        {
                            Console.WriteLine("\n - Aula Inserida com sucesso!");
                        }
                    }


                    // Se não apresenta erro
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                    }


                    #endregion

                    break;


                // Apresenta a lista de aulas de um curso ordenada
                case 7:

                    #region ListaAula

                    // Requista informação
                    Console.Write("\n - Insira o nome do curso que deseja consultar as aulas: ");
                    nomeCursoAux = Console.ReadLine().ToUpper();

                    // Tenta requisitar a informaçao
                    try
                    {
                        conjuntoAulas = ValidaDadosOutput.DevolveConjuntoAulas(nomeCursoAux);
                    }

                    // se não conseguir lança o erro
                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                        break;
                    }

                    // Percorre a informação
                    foreach (Aula aula in conjuntoAulas)
                    {
                        // Apresenta a informação
                        Console.WriteLine("\n\n\t\t ** Aula ** ");
                        Console.Write("\n - Data: {0}", aula.Data);
                        Console.Write("\n Numero Docente Responsavel: {0}", aula.NumeroDocente);
                        Console.Write("\n Sala: {0}", aula.Sala);
                        Console.Write("\n Turma: {0}", aula.IdentificacaoTurma);
                        Console.Write("\n Unidade Curricular: {0}", aula.UnidadeCurricular);
                        Console.WriteLine("\n\n\t\t ** ** ");
                    }

                    Console.ReadKey();

                    #endregion

                    break;


                // Guarda a informação em ficheiro
                case 8:

                    #region GuardaInformacao

                    // Tenta guardar a informação
                    try
                    {
                        ValidaDadosOutput.GuardaInformacao();
                    }


                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                        break;
                    }

                    finally
                    {
                        Console.WriteLine(" - Informação guardada com sucesso !");
                        Console.ReadKey();
                    }


                    #endregion

                    break;


                // Carrega as informaçoes
                case 9:

                    #region CarregaInformacao

                    // Tenta carregar a informação
                    try
                    {
                        ValidaDadosInput.CarregaInformacao();
                    }


                    catch (Exception erro)
                    {
                        Console.WriteLine(erro.Message);
                        Console.ReadKey();
                        break;
                    }

                    finally
                    {
                        Console.WriteLine(" - Informação Carregada com sucesso!");
                        Console.ReadKey();
                    }



                    #endregion

                    break;


                // SAIR
                case 0:

                    Environment.Exit(0);

                    break;



                // Caso Default
                default:

                    Console.WriteLine(" Opção não é valida tente novamente !");
                    Console.ReadKey();

                    break;
                }
            } while (opcaoEscolhida != 0);
        }