private static void InserirSerie() { Serie novaSerie = ObterDadosSerie(); serieRepositorio.Insere(novaSerie); }
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(); }
/// <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); }
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; } } }
/// <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); }