private static void InserirSerie()
        {
            Serie novaSerie = ObterDadosSerie();

            serieRepositorio.Insere(novaSerie);
        }
Example #2
0
        private static void AtualizarSerie()
        {
            string entrada       = null;
            bool   status        = false;
            int    limite        = repositorio.ProximoId();
            int    indiceSerie   = 0;
            int    entradaGenero = 0;
            string entradaTitulo;
            int    entradaAno = 0;
            string entradaDescricao;

            while (status == false)
            {
                Console.Write("Informe o id da série (ou tecle X para Sair): ");
                entrada = Console.ReadLine().ToUpper();
                if (entrada == "X")
                {
                    status = true;
                }
                try
                {
                    if (int.Parse(entrada) >= 0 && int.Parse(entrada) <= limite - 1)
                    {
                        status = true;
                    }
                }
                catch
                {
                    continue;
                }
            }

            if (entrada == "X")
            {
                return;
            }
            else
            {
                indiceSerie = int.Parse(entrada);
            }

            int i = 0;

            foreach (int genero in Enum.GetValues(typeof(Genero)))
            {
                i++;
                Console.WriteLine("{0, 2} - {1}", i, Enum.GetName(typeof(Genero), genero));
            }

            status = false;
            while (status == false)
            {
                Console.Write("Informe o gênero entre as opções acima (ou tecle X para Sair): ");
                entrada = Console.ReadLine().ToUpper();
                if (entrada == "X")
                {
                    status = true;
                }
                try
                {
                    if (int.Parse(entrada) >= 1 && int.Parse(entrada) <= i)
                    {
                        status = true;
                    }
                }
                catch
                {
                    continue;
                }
            }
            if (entrada == "X")
            {
                return;
            }
            else
            {
                entradaGenero = int.Parse(entrada);
            }

            Console.Write("Informe o Título da Série: ");
            entradaTitulo = Console.ReadLine();

            status = false;
            while (status == false)
            {
                Console.Write("Informe o Ano de Início da Série (ou tecle X para Sair): ");
                entrada = Console.ReadLine().ToUpper();
                if (entrada == "X")
                {
                    status = true;
                }
                try
                {
                    if (int.Parse(entrada) > 0)
                    {
                        status = true;
                    }
                }
                catch
                {
                    continue;
                }
            }
            if (entrada == "X")
            {
                return;
            }
            else
            {
                entradaAno = int.Parse(entrada);
            }

            Console.Write("Digite a Descrição da Série: ");
            entradaDescricao = Console.ReadLine();

            Serie atualizaSerie = new Serie(id: indiceSerie,
                                            genero: (Genero)entradaGenero,
                                            titulo: entradaTitulo,
                                            ano: entradaAno,
                                            descricao: entradaDescricao);

            repositorio.Atualiza(indiceSerie, atualizaSerie);

            Console.WriteLine("\nSérie alterada com sucesso!\nPressione [Enter] para continuar.");
            Console.ReadLine();
        }
Example #3
0
        /// <summary>
        /// Atualizar um Filme ou Série
        /// </summary>
        /// <param name="opcaoMenu">Filme ou Série</param>
        static void Atualizar(EOpcaoMenu opcaoMenu)
        {
            ExibirTitulo("ATUALIZAR", ConsoleColor.DarkYellow);

            //Localizar registro
            Console.Write("Digite o #ID: ");
            string inputID = Console.ReadLine();
            int    idAtual;

            //Tratar possível erro na conversão
            try
            {
                idAtual = int.Parse(inputID);
            }
            catch
            {
                idAtual = ID_INVALIDO;
            }

            if (!ValidarId(opcaoMenu, idAtual))
            {
                return;
            }

            ExibirMensagem("\t[Instrução]: Tecle <ENTER> para manter os dados atuais", ConsoleColor.Cyan, false);
            Console.WriteLine();
            Console.WriteLine();

            Console.WriteLine(ExibirGeneros());
            Console.WriteLine();
            //Séries
            if (opcaoMenu == EOpcaoMenu.Series)
            {
                //Recupera registro
                var serieAtual = SerieCollection.Instance.SelectById(idAtual);

                //Gênero
                ExibirTexto($"Gênero: {EnumHelper.GetDescription(serieAtual.Genero)}", ConsoleColor.DarkGray);
                Console.Write("Genero Principal: ");
                string inputGenero = Console.ReadLine();
                int    generoId;

                if (String.IsNullOrWhiteSpace(inputGenero))
                {
                    generoId = (int)serieAtual.Genero;
                }
                else
                {
                    int.TryParse(inputGenero, out generoId);
                }

                //Título
                ExibirTexto($"Título: {serieAtual.Titulo}", ConsoleColor.DarkGray);
                Console.Write("Título: ");
                string inputTitulo = Console.ReadLine();

                if (String.IsNullOrWhiteSpace(inputTitulo))
                {
                    inputTitulo = serieAtual.Titulo;
                }

                //Descrição
                ExibirTexto($"Descrição: {serieAtual.Descricao}", ConsoleColor.DarkGray);
                Console.Write("Descrição: ");
                string inputDescricao = Console.ReadLine();

                if (String.IsNullOrWhiteSpace(inputDescricao))
                {
                    inputDescricao = serieAtual.Descricao;
                }

                //Classificação
                ExibirTexto($"Classificação: {serieAtual.Classificacao}", ConsoleColor.DarkGray);
                Console.Write("Classificação (somente números, 0 para todas as idades): ");
                string inputClassificacao = Console.ReadLine();
                int    classificacao;

                if (String.IsNullOrWhiteSpace(inputClassificacao))
                {
                    classificacao = serieAtual.Classificacao;
                }
                else
                {
                    int.TryParse(inputClassificacao, out classificacao);
                }

                //Temporadas
                ExibirTexto($"Temporadas: {serieAtual.Temporadas}", ConsoleColor.DarkGray);
                Console.Write("Temporadas (somente números): ");
                string inputTemporadas = Console.ReadLine();
                int    temporadas;

                if (String.IsNullOrWhiteSpace(inputTemporadas))
                {
                    temporadas = serieAtual.Temporadas;
                }
                else
                {
                    int.TryParse(inputTemporadas, out temporadas);
                }

                Serie novaSerie = new Serie(
                    id: idAtual,
                    genero: (EGeneros)generoId,
                    titulo: inputTitulo,
                    descricao: inputDescricao,
                    classificacao: classificacao,
                    temporadas: temporadas
                    );

                SerieCollection.Instance.Update(idAtual, novaSerie);
            }
            //Filmes
            else if (opcaoMenu == EOpcaoMenu.Filmes)
            {
                //Recupera registro
                var filmeAtual = FilmeCollection.Instance.SelectById(idAtual);

                //Gênero
                ExibirTexto($"Gênero: {filmeAtual.Genero}", ConsoleColor.DarkGray);
                Console.Write("Genero: ");
                string inputGenero = Console.ReadLine();
                int    generoId;

                if (String.IsNullOrWhiteSpace(inputGenero))
                {
                    generoId = (int)filmeAtual.Genero;
                }
                else
                {
                    int.TryParse(inputGenero, out generoId);
                }

                //Título
                ExibirTexto($"Título: {filmeAtual.Titulo}", ConsoleColor.DarkGray);
                Console.Write("Título: ");
                string inputTitulo = Console.ReadLine();

                if (String.IsNullOrWhiteSpace(inputTitulo))
                {
                    inputTitulo = filmeAtual.Titulo;
                }

                //Descrição
                ExibirTexto($"Descrição: {filmeAtual.Descricao}", ConsoleColor.DarkGray);
                Console.Write("Descrição: ");
                string inputDescricao = Console.ReadLine();

                if (String.IsNullOrWhiteSpace(inputDescricao))
                {
                    inputDescricao = filmeAtual.Descricao;
                }

                //Classificação
                ExibirTexto($"Classificação: {filmeAtual.Classificacao}", ConsoleColor.DarkGray);
                Console.Write("Classificação (somente números, 0 para todas as idades): ");
                string inputClassificacao = Console.ReadLine();
                int    classificacao;

                if (String.IsNullOrWhiteSpace(inputClassificacao))
                {
                    classificacao = filmeAtual.Classificacao;
                }
                else
                {
                    int.TryParse(inputClassificacao, out classificacao);
                }

                //Duração
                ExibirTexto($"Duração: {filmeAtual.Duracao}", ConsoleColor.DarkGray);
                Console.Write("Duração (em minutos, somente números): ");
                string inputDuracao = Console.ReadLine();
                int    duracao;

                if (String.IsNullOrWhiteSpace(inputDuracao))
                {
                    duracao = filmeAtual.Duracao;
                }
                else
                {
                    int.TryParse(inputDuracao, out duracao);
                }

                //Elenco
                ExibirTexto($"Elenco: {filmeAtual.Elenco}", ConsoleColor.DarkGray);
                Console.Write("Elenco (separe os nomes por vírgula): ");
                string inputElenco = Console.ReadLine();

                if (String.IsNullOrWhiteSpace(inputElenco))
                {
                    inputElenco = filmeAtual.Elenco;
                }

                Filme novoFilme = new Filme(
                    id: idAtual,
                    genero: (EGeneros)generoId,
                    titulo: inputTitulo,
                    descricao: inputDescricao,
                    classificacao: classificacao,
                    duracao: duracao,
                    elenco: inputElenco
                    );

                FilmeCollection.Instance.Update(idAtual, novoFilme);
            }

            ExibirMensagem($"Registro atualizado. {PRESSIONE_TECLA_MSG}", ConsoleColor.DarkYellow);
        }
Example #4
0
        private static void InserirSerie()
        {
            string opcao = null;

            while (opcao != "1" || opcao != "2" || opcao != "X")
            {
                Console.WriteLine("\nOpções de preenchimento de nova(s) serie(s):\n  1 - Para preenchimento automático (atualiza com algumas séries previamente cadastradas a fim de viabilizar os testes)\n  2 - Para preenchimento manual\n  X - Para Sair\n");
                opcao = Console.ReadLine().ToUpper();
                switch (opcao)
                {
                case "1":

                    PreencherSeries();
                    return;

                case "2":

                    string entrada       = "";
                    int    entradaGenero = 0;
                    string entradaTitulo;
                    int    entradaAno = 0;
                    string entradaDescricao;

                    Console.WriteLine("\n  < Inserir nova série >\n");

                    // https://docs.microsoft.com/pt-br/dotnet/api/system.enum.getvalues?view=netcore-3.1
                    // https://docs.microsoft.com/pt-br/dotnet/api/system.enum.getname?view=netcore-3.1
                    int i = 0;
                    foreach (int genero in Enum.GetValues(typeof(Genero)))
                    {
                        i++;
                        Console.WriteLine("{0, 2} - {1}", i, Enum.GetName(typeof(Genero), genero));
                    }
                    bool status = false;
                    while (status == false)
                    {
                        Console.Write("Informe o gênero entre as opções acima (ou tecle X para Sair): ");
                        entrada = Console.ReadLine().ToUpper();
                        if (entrada == "X")
                        {
                            status = true;
                        }
                        try
                        {
                            if (int.Parse(entrada) >= 1 && int.Parse(entrada) <= i)
                            {
                                status = true;
                            }
                        }
                        catch
                        {
                            continue;
                        }
                    }
                    if (entrada == "X")
                    {
                        return;
                    }
                    else
                    {
                        entradaGenero = int.Parse(entrada);
                    }

                    Console.Write("Informe o Título da Série: ");
                    entradaTitulo = Console.ReadLine();

                    status = false;
                    while (status == false)
                    {
                        Console.Write("Informe o Ano de Início da Série (ou tecle X para Sair): ");
                        entrada = Console.ReadLine().ToUpper();
                        if (entrada == "X")
                        {
                            status = true;
                        }
                        try
                        {
                            if (int.Parse(entrada) > 0)
                            {
                                status = true;
                            }
                        }
                        catch
                        {
                            continue;
                        }
                    }
                    if (entrada == "X")
                    {
                        return;
                    }
                    else
                    {
                        entradaAno = int.Parse(entrada);
                    }

                    Console.Write("Digite a Descrição da Série: ");
                    entradaDescricao = Console.ReadLine();

                    Serie novaSerie = new Serie(id: repositorio.ProximoId(),
                                                genero: (Genero)entradaGenero,
                                                titulo: entradaTitulo,
                                                ano: entradaAno,
                                                descricao: entradaDescricao);

                    repositorio.Insere(novaSerie);
                    Console.WriteLine("\nSérie cadastrada com sucesso!\nPressione [Enter] para continuar.");
                    Console.ReadLine();
                    return;

                case "X":
                    return;
                }
            }
        }
Example #5
0
        /// <summary>
        /// Adicionar um novo título no catalogo
        /// </summary>
        /// <param name="opcaoMenu">Filme ou Serie</param>
        static void Adicionar(EOpcaoMenu opcaoMenu)
        {
            ExibirTitulo("ADICIONAR", ConsoleColor.DarkGreen);

            Console.WriteLine(ExibirGeneros());
            Console.WriteLine();

            //Genero
            Console.Write("Genero Principal: ");
            string inputGenero = Console.ReadLine();

            int generoId;

            int.TryParse(inputGenero, out generoId);

            //Titulo
            Console.Write("Título: ");
            string inputTitulo = Console.ReadLine();

            //Descrição
            Console.Write("Descrição: ");
            string inputDescricao = Console.ReadLine();

            //Classificação
            Console.Write("Classificação (somente números, 0 para todas as idades): ");
            string inputClassificacao = Console.ReadLine();

            int classificacao;

            int.TryParse(inputClassificacao, out classificacao);

            //Series
            if (opcaoMenu == EOpcaoMenu.Series)
            {
                //Temporadas
                Console.Write("Temporadas (somente números): ");
                string inputTemporadas = Console.ReadLine();

                int temporadas;
                int.TryParse(inputTemporadas, out temporadas);

                Serie novaSerie = new Serie(
                    id: SerieCollection.Instance.NextId(),
                    genero: (EGeneros)generoId,
                    titulo: inputTitulo,
                    descricao: inputDescricao,
                    classificacao: classificacao,
                    temporadas: temporadas
                    );

                SerieCollection.Instance.Insert(novaSerie);
            }
            //Filmes
            else if (opcaoMenu == EOpcaoMenu.Filmes)
            {
                //Duração
                Console.Write("Duração (em minutos, somente números): ");
                string inputDuracao = Console.ReadLine();
                int    duracao;
                int.TryParse(inputDuracao, out duracao);

                //Elenco
                Console.Write("Elenco (separe os nomes por vírgula): ");
                string inputElenco = Console.ReadLine();

                Filme novofilme = new Filme(
                    id: FilmeCollection.Instance.NextId(),
                    genero: (EGeneros)generoId,
                    titulo: inputTitulo,
                    descricao: inputDescricao,
                    classificacao: classificacao,
                    duracao: duracao,
                    elenco: inputElenco
                    );

                FilmeCollection.Instance.Insert(novofilme);
            }

            ExibirMensagem($"Registro adicionado. {PRESSIONE_TECLA_MSG}", ConsoleColor.DarkGreen);
        }