public static void GerirCartao(UtilizadorComum utilizador) { if (utilizador.CartaoCredito != null) { Console.WriteLine("Já existe cartão associado"); Console.WriteLine($"Nome: {utilizador.CartaoCredito.Nome}"); Console.WriteLine($"Número: {utilizador.CartaoCredito.Numero}"); return; } utilizador.CartaoCredito = new Cartao(); Console.WriteLine("Digite os dados do cartão seguidos de Enter: Nome, Número, Mês(num), Ano, CVC"); utilizador.CartaoCredito.Nome = Console.ReadLine(); utilizador.CartaoCredito.Numero = long.Parse(Console.ReadLine()); utilizador.CartaoCredito.Mes = MenuGeral.CheckNum(); utilizador.CartaoCredito.Ano = MenuGeral.CheckNum(); utilizador.CartaoCredito.CVC = MenuGeral.CheckNum(); Console.WriteLine("Cartão gravado"); }
public static void ApagarShow(List <Show> shows) { MenuGeral.MostrarShows("admin", shows); Console.WriteLine("Qual o Id do show que quer apagar?"); int showID = MenuGeral.CheckNum(); var showly = shows.FirstOrDefault(e => e.IdShow == showID); if (showly == null) { Console.WriteLine("Show não existente"); return; } shows.Remove(showly); foreach (Show sh in shows) { if (sh.IdShow > showID) { sh.IdShow = sh.IdShow - 1; } } }
public static void AlterarInfoPreco(Movie4ALL movie4ALL) { MenuGeral.ColorUser("admin"); var preco = new Precario(); do { Console.WriteLine("De que tipo de Show quer alterar o preço? \"Serie\"\\\"Filme\"\\\"Documentario\""); preco.TipoShow = Console.ReadLine(); if (!(preco.TipoShow.ToLower() == "serie" || preco.TipoShow.ToLower() == "filme" || preco.TipoShow.ToLower() == "documentario")) { Console.WriteLine("Tipo de Show Inexistente"); } } while (!(preco.TipoShow.ToLower() == "serie" || preco.TipoShow.ToLower() == "filme" || preco.TipoShow.ToLower() == "documentario")); Console.WriteLine("Qual o preço? e por quantos dias? (Separado de Enter)"); bool erro = true; do { try { preco.Preco = decimal.Parse(Console.ReadLine()); erro = false; } catch (FormatException) { Console.WriteLine("Erro de formato, repita o número"); } } while (erro); preco.PeriodoDias = MenuGeral.CheckNum(); preco.DataInicio = DateTime.Now; if (movie4ALL.Precos.FirstOrDefault(e => e.TipoShow == preco.TipoShow) != null) { movie4ALL.Precos.LastOrDefault(e => e.TipoShow == preco.TipoShow).DataFim = DateTime.Now; } preco.DataFim = DateTime.MaxValue; movie4ALL.Precos.Add(preco); preco.IdPreco = movie4ALL.Precos.LastIndexOf(preco); }
public static void UpdateShow(int showID, List <Show> shows) { MenuGeral.ColorUser("admin"); var showly = shows.FirstOrDefault(e => e.IdShow == showID); if (showly == null) { Console.WriteLine("Show inexistente"); return; } Console.WriteLine("Quer mudar o Titulo? s/n"); string stringOpcao = Console.ReadLine(); if (stringOpcao.ToLower() == "s") { Console.WriteLine("Titulo?"); string Titulo = Console.ReadLine(); showly.Titulo = Titulo; } Console.WriteLine("Quer mudar o Ano? s/n"); stringOpcao = Console.ReadLine(); if (stringOpcao.ToLower() == "s") { Console.WriteLine("Ano?"); showly.Ano = MenuGeral.CheckNum(); } Console.WriteLine("Quer mudar o Código do País? s/n"); stringOpcao = Console.ReadLine(); if (stringOpcao.ToLower() == "s") { Console.WriteLine("Código?"); var CodPais = Console.ReadLine(); showly.CodPais = CodPais; } }
// De acordo com o DER o utilizador pode avaliar qualquer show, independentemente de o ter alugado ou não. // Por falta de tempo e devido a ser um detalhe que não está claramente definido, assim ficou. public static void Avaliar(UtilizadorComum utilizador, Movie4ALL movie4ALL) { MenuGeral.MostrarShows(utilizador.Id, movie4ALL.Shows); var show = MenuGeral.ConsultaShow(movie4ALL.Shows); if (show == null) { Console.WriteLine("Show inexistente"); return; } var avaliacao = new Avaliacao { ShowAvaliado = show }; bool avalia1 = true; if (UpdateAvaliacao(show, utilizador.ListadeAvaliacao) != null) { avaliacao = utilizador.ListadeAvaliacao.FirstOrDefault(e => e.ShowAvaliado == show); Console.WriteLine("Já existe uma avaliação a este filme, vamos alterá-la? Sim/nao"); string novaAvaliacao = Console.ReadLine(); if (novaAvaliacao.ToLower() == "nao") { return; } if (novaAvaliacao.ToLower() == "sim") { do { Console.WriteLine($"Em quantas estrelas (0 a 5) avalia {show.Titulo}? "); avaliacao.Stars = MenuGeral.CheckNum(); if (avaliacao.Stars > 5 || avaliacao.Stars < 0) { Console.WriteLine("Avaliação fora dos parâmetros"); avalia1 = false; } } while (!avalia1); avaliacao.DataUpdate = DateTime.Now; Console.WriteLine($"Insira uma pequena descrição."); avaliacao.Descricao = Console.ReadLine(); return; } else { Console.WriteLine("Não percebi a sua opção, presumo que não queira alterar, vamos voltar ao Menu"); return; } } do { Console.WriteLine($"Em quantas estrelas (0 a 5) avalia {show.Titulo}? "); avaliacao.Stars = MenuGeral.CheckNum(); if (avaliacao.Stars > 5 || avaliacao.Stars < 0) { Console.WriteLine("Avaliação fora dos parâmetros"); avalia1 = false; } } while (!avalia1); avaliacao.DataCriacao = DateTime.Now; Console.WriteLine($"Insira uma pequena descrição."); avaliacao.Descricao = Console.ReadLine(); utilizador.ListadeAvaliacao.Add(avaliacao); }