Ejemplo n.º 1
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);
        }
Ejemplo n.º 2
0
        private static void InserirShow()
        {
            Console.WriteLine("Inserir novo show");

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

            Console.Write("Digite o tipo de show conforme as opções acima: ");
            TipoShow entradaTipo = (TipoShow)int.Parse(Console.ReadLine());

            string artigo, tipo;

            switch (entradaTipo)
            {
            case TipoShow.Serie:
                artigo = "a";
                tipo   = "série";
                break;

            case TipoShow.Filme:
                artigo = "o";
                tipo   = "filme";
                break;

            default:
                Console.Write("Tipo inválido!");
                return;
            }

            foreach (int i in Enum.GetValues(typeof(Genero)))
            {
                Console.WriteLine("{0} - {1}", i, Enum.GetName(typeof(Genero), i));
            }
            Console.Write("Digite o gênero conforme as opções acima: ");
            int entradaGenero = int.Parse(Console.ReadLine());

            Console.Write("Digite o título d{0} {1}: ", artigo, tipo);
            string entradaTitulo = Console.ReadLine();

            Console.Write("Digite o ano de início d{0} {1}: ", artigo, tipo);
            int entradaAno = int.Parse(Console.ReadLine());

            Console.Write("Digite a descrição d{0} {1}: ", artigo, tipo);
            string entradaDescricao = Console.ReadLine();

            Show novoShow;

            switch (entradaTipo)
            {
            case TipoShow.Serie:
                novoShow = new Serie(id: repositorio.ProximoId(),
                                     genero: (Genero)entradaGenero,
                                     titulo: entradaTitulo,
                                     ano: entradaAno,
                                     descricao: entradaDescricao);
                break;

            case TipoShow.Filme:
                novoShow = new Filme(id: repositorio.ProximoId(),
                                     genero: (Genero)entradaGenero,
                                     titulo: entradaTitulo,
                                     ano: entradaAno,
                                     descricao: entradaDescricao);
                break;

            default:
                Console.Write("Tipo inválido!");
                return;
            }
            repositorio.Insere(novoShow);
        }
Ejemplo n.º 3
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);
        }