Exemple #1
0
            public static void CriarShow(Movie4ALL movie4ALL)
            {
                MenuGeral.ColorUser("admin");
                System.Console.WriteLine("Qual o Tipo de show? Filme, Serie, Documentario");
                var tiposhow = Console.ReadLine();

                if (tiposhow.ToLower() == "filme")
                {
                    var filme = new Filme();
                    filme.CriaShow();
                    movie4ALL.Shows.Add(filme);
                    filme.IdShow = movie4ALL.Shows.LastIndexOf(filme);
                }
                else if (tiposhow.ToLower() == "serie")
                {
                    var serie = new Serie();
                    serie.CriaShow();
                    movie4ALL.Shows.Add(serie);
                    serie.IdShow = movie4ALL.Shows.LastIndexOf(serie);
                }
                else if (tiposhow.ToLower() == "documentario")
                {
                    var documentario = new Documentario();
                    documentario.CriaShow();
                    movie4ALL.Shows.Add(documentario);
                    documentario.IdShow = movie4ALL.Shows.LastIndexOf(documentario);
                }
                else
                {
                    Console.WriteLine("Tipo de show inexistente");
                }
            }
Exemple #2
0
        public static void MenuAdministrador(Movie4ALL movie4ALL)

        {
            MenuGeral.ColorUser("admin");
            Console.WriteLine("Escolha uma opção:");
            Console.WriteLine("1. Criar/Alterar Informação de Shows");
            Console.WriteLine("2. Criar/Alterar Informação de Atores");
            Console.WriteLine("3. Alterar Informação de Preço");

            string opcaoAdmin = Console.ReadLine();

            switch (opcaoAdmin)
            {
            case "1":
                MenusAdminShow.MenuAlterarShow(movie4ALL);
                break;

            case "2":
                MenuAdminAtor.MenuAlterarAtor(movie4ALL);
                break;

            case "3":
                MenuAdminPreco.AlterarInfoPreco(movie4ALL);
                break;

            default:
                Console.WriteLine("Opção Inexistente");
                Thread.Sleep(500);
                MenuAdministrador(movie4ALL);
                break;
            }
        }
Exemple #3
0
            public static void AtribuirAtor(Movie4ALL movie4ALL)
            {
                MostrarAtores(movie4ALL.ListaAtoresGeral);
                var ator = ConsultaAtor(movie4ALL.ListaAtoresGeral);

                if (ator == null)
                {
                    Console.WriteLine("Ator inexistente, volte ao menu");
                    return;
                }
                MenuGeral.MostrarShows("admin", movie4ALL.Shows);
                var showly = MenuGeral.ConsultaShow(movie4ALL.Shows);

                if (showly == null)
                {
                    Console.WriteLine("Filme inexistente, volte ao menu");
                    return;
                }
                if (showly.ListaAtores.Contains(ator))
                {
                    Console.WriteLine("Esse ator já foi atribuído a esse Show");
                    return;
                }
                showly.ListaAtores.Add(ator);
            }
Exemple #4
0
            public static void MenuAlterarAtor(Movie4ALL movie4ALL)
            {
                Menu.MenuGeral.ColorUser("admin");

                Console.WriteLine("Escolha uma opção:");
                Console.WriteLine("1. Criar Ator");
                Console.WriteLine("2. Atribuir Ator a Show");
                Console.WriteLine("3. Apagar Ator de Show");
                Console.WriteLine("4. Mostrar Atores");

                string opcaoAdmin = Console.ReadLine();

                switch (opcaoAdmin)
                {
                case "1":
                    CriarAtor(movie4ALL);
                    break;

                case "2":
                    AtribuirAtor(movie4ALL);
                    break;

                case "3":
                    ApagarAtor(movie4ALL);
                    break;

                case "4":
                    MostrarAtores(movie4ALL.ListaAtoresGeral);
                    break;
                }
            }
Exemple #5
0
        public static void AlugarShow(UtilizadorComum utilizador, Movie4ALL movie4ALL)
        {
            MenuGeral.MostrarShows(utilizador.Id, movie4ALL.Shows);
            var show = MenuGeral.ConsultaShow(movie4ALL.Shows);

            if (show == null)
            {
                Console.WriteLine("Show inexistente");
                return;
            }
            Aluguer aluguer = new Aluguer {
                ShowAlugado = show
            };

            aluguer.Valor   = ConsultaPrecario(movie4ALL.Precos, aluguer).PeriodoDias *ConsultaPrecario(movie4ALL.Precos, aluguer).Preco;
            aluguer.DataFim = DateTime.Now.AddDays(ConsultaPrecario(movie4ALL.Precos, aluguer).PeriodoDias);
            if (show.TipoShow == "serie")
            { //O valor do Aluguer é referente ao valor * período * num episodios
                aluguer.DataFim = DateTime.Now.AddDays(MenuGeral.NumEpisodios(show));
                aluguer.Valor   = aluguer.Valor * MenuGeral.NumEpisodios(show);
            }

            utilizador.Alugueres.Add(aluguer);
            Console.WriteLine($"O Alguer de {aluguer.ShowAlugado.Titulo} expira em {aluguer.DataFim}");
            Console.WriteLine($"Tem um valor de {aluguer.Valor}");
            aluguer.IdAluguer = utilizador.Alugueres.LastIndexOf(aluguer); //Id que é incrementado com o valor do indíce da Lista onde se encontra
        }
Exemple #6
0
 public static void IntegraListaShows(Movie4ALL movie4ALL, string moviesCsv)
 {
     if (ConvertShow(moviesCsv) == null)
     {
         Console.WriteLine("Escolha outra opção.");
         return;
     }
     movie4ALL.Shows.AddRange(ConvertShow(moviesCsv));
     movie4ALL.Shows.ForEach(s => s.IdShow = movie4ALL.Shows.LastIndexOf(s));
 }
Exemple #7
0
            public static void CriarAtor(Movie4ALL movie4ALL)
            {
                MenuGeral.ColorUser("admin");
                var ator = new Ator();

                Console.WriteLine("Qual o Nome do Ator?");
                ator.Nome = Console.ReadLine();
                Console.WriteLine("Qual o Género do Ator? (M/F)");
                ator.Genero = Console.ReadLine();
                Console.WriteLine("Qual o Nickname do Ator?");
                ator.Nickname = Console.ReadLine();
                movie4ALL.ListaAtoresGeral.Add(ator);
            }
Exemple #8
0
        public static void IncializaMenu(Movie4ALL movie4ALL)
        {
            Console.BackgroundColor = ConsoleColor.Red;
            Console.WriteLine("Bem Vindo ao Movie4All!");
            Console.ResetColor();
            Console.WriteLine();

            Console.WriteLine("Escolha uma opção");
            Console.WriteLine("1. Novo Utilizador - Registar");
            Console.WriteLine("2. Utilizador existente - Login");
            string opcao;

            opcao = Console.ReadLine();

            OpcaoUtiliz(opcao, movie4ALL);
        }
Exemple #9
0
        public static void MenuUtiliz(UtilizadorComum utilizador, Movie4ALL movie4ALL)
        {
            MenuGeral.ColorUser(utilizador.Id);

            Console.WriteLine("Escolha uma opção:");
            Console.WriteLine("1. Alugar Show");
            Console.WriteLine("2. Avaliar Show");
            Console.WriteLine("3. Gerir Informação de Cartão");
            Console.WriteLine("4. Verificar Histórico de Alugueres");
            Console.WriteLine("5. Verificar Histórico de Avaliações");
            Console.WriteLine("6. Mostrar Shows");
            Console.WriteLine("7. Sair");
            Console.WriteLine();
            string opcaoUtiliz = Console.ReadLine();

            switch (opcaoUtiliz)
            {
            case "1":
                AlugarShow(utilizador, movie4ALL);
                break;

            case "2":
                Avaliar(utilizador, movie4ALL);
                break;

            case "3":
                GerirCartao(utilizador);
                break;

            case "4":
                MostraAlugueres(utilizador);
                break;

            case "5":
                HistoricoAvaliacao(utilizador);
                break;

            case "6":
                MenuGeral.MostrarShows(utilizador.Id, movie4ALL.Shows);
                break;

            case "7":
                return;
            }
        }
Exemple #10
0
            public static void MenuAlterarShow(Movie4ALL movie4ALL)
            {
                MenuGeral.ColorUser("admin");
                Console.WriteLine("Escolha uma opção:");
                Console.WriteLine("1. Criar Show");
                Console.WriteLine("2. Alterar Informação de Show");
                Console.WriteLine("3. Apagar Show");
                Console.WriteLine("4. Mostrar Shows");
                Console.WriteLine("5. Importar Lista Shows");

                string opcaoAdmin = Console.ReadLine();

                switch (opcaoAdmin)
                {
                case "1":
                    CriarShow(movie4ALL);
                    break;

                case "2":
                    AlterarInfoShow(movie4ALL.Shows);
                    break;

                case "3":
                    ApagarShow(movie4ALL.Shows);
                    break;

                case "4":
                    MenuGeral.MostrarShows("admin", movie4ALL.Shows);
                    break;

                case "5":
                    Console.WriteLine("Coloque o ficheiro CSV na pasta Temp e de seguida escreva o nome do ficheiro (inclua o .csv)");
                    string fichCsv = Console.ReadLine();
                    Menu.CSV.IntegraListaShows(movie4ALL, fichCsv);
                    break;

                default:
                    Console.WriteLine("Opção Inexistente");
                    Thread.Sleep(500);
                    MenuAlterarShow(movie4ALL);
                    break;
                }
            }
Exemple #11
0
            public static void ApagarAtor(Movie4ALL movie4ALL)
            {
                MenuGeral.ColorUser("admin");
                var ator = ConsultaAtor(movie4ALL.ListaAtoresGeral);

                if (ator == null)
                {
                    Console.WriteLine("Ator inexistente, volte ao menu");
                    return;
                }
                var showly = MenuGeral.ConsultaShow(movie4ALL.Shows);

                if (showly == null)
                {
                    Console.WriteLine("Filme inexistente, volte ao menu");
                    return;
                }
                showly.ListaAtores.Remove(ator);
            }
Exemple #12
0
            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);
            }
Exemple #13
0
        private static void OpcaoUtiliz(string opcao, Movie4ALL movie4ALL)
        {
            Console.Clear();
            Console.BackgroundColor = ConsoleColor.Red;
            Console.WriteLine("Bem Vindo ao Movie4All!");
            Console.ResetColor();
            Console.WriteLine();
            switch (opcao)
            {
            case "1":

                string[] word;
                string   user, user1;

                Console.WriteLine("Escolha um username");
                do
                {
                    user = Console.ReadLine();
                    Console.WriteLine("......");
                    Thread.Sleep(1500);
                    if (movie4ALL.UtilizadorComums.Exists(u => u.Id.Contains(user.ToLower())))
                    {
                        Console.WriteLine("Utilizador já existente, utilize outro username");
                    }
                } while (movie4ALL.UtilizadorComums.Exists(u => u.Id.Contains(user.ToLower())));

                do
                {
                    Console.WriteLine("Escreva agora nome, email, NIF e telemovel separados por vírgulas");

                    user1 = Console.ReadLine();
                    word  = user1.Split(',');
                } while (word.Length != 4);
                var utilizador = new UtilizadorComum
                {
                    Id        = user,
                    Nome      = word[0],
                    Email     = word[1],
                    NumFiscal = CheckNumString(word[2]),
                    Telemovel = CheckNumString(word[3])
                };

                CriaUtilizador(utilizador, movie4ALL.UtilizadorComums);
                OpcaoUtiliz("2", movie4ALL);
                break;

            case "2":
                Console.WriteLine("Escreve o seu username");
                string utilizadorId = Console.ReadLine();
                string sair;
                if (movie4ALL.UtilizadorComums.Exists(u => u.Id.Contains(utilizadorId.ToLower())))
                {
                    do
                    {
                        var utilizadorProv = movie4ALL.UtilizadorComums.FirstOrDefault(e => e.Id == utilizadorId);
                        MenuUtilizador.MenuUtiliz(utilizadorProv, movie4ALL);
                        Console.WriteLine("Deseja Sair? Sim/Nao");
                        sair = Console.ReadLine();
                        Console.Clear();
                    } while (sair.ToLower() != "sim");
                }
                else if (utilizadorId == "admin")
                {
                    do
                    {
                        Menu.MenuAdmin.MenuAdministrador(movie4ALL);
                        Console.WriteLine("Deseja Sair? Sim/Nao");
                        sair = Console.ReadLine();
                        Console.Clear();
                    } while (sair.ToLower() != "sim");
                }
                else
                {
                    Console.Clear();
                    Console.WriteLine("Utilizador Não existente");
                    IncializaMenu(movie4ALL);
                }
                break;

            default:
                Console.WriteLine("Opção Inválida, Adeus");
                IncializaMenu(movie4ALL);
                break;
            }
        }
Exemple #14
0
        // 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);
        }