Example #1
0
        static void Main(string[] args)
        {
            try
            {
                // Declarando todas as classes que serão utilizadas
                Login            lg    = new Login();
                Acervo           ac    = new Acervo();
                AcervoDisponível acd   = new AcervoDisponível();
                AcervoLocado     acl   = new AcervoLocado();
                AcervoProcura    acp   = new AcervoProcura();
                Clientes         cli   = new Clientes();
                Devolucao        devol = new Devolucao();
                Locacao          lc    = new Locacao();
                Formatacao       ft    = new Formatacao();
                TextInfo         ti    = CultureInfo.CurrentCulture.TextInfo;
                ClienteProcura   clipr = new ClienteProcura();

                //formatação cor de fundo e das letras
                Console.Title           = "Sistema de Locacao";  //titulo do console
                Console.BackgroundColor = ConsoleColor.DarkCyan; //cor de fundo
                Console.ForegroundColor = ConsoleColor.White;    //cor das letras
                Console.Clear();

                ft.Altura();
                ft.MargEsqu();
                Console.WriteLine("Locadora Total Video");
                Console.WriteLine();

                //Login do funcionário e primeiro acesso ao menu da locadora
                ft.Linha();
                Console.WriteLine();
                ft.MargEsquRed();
                ft.MargEsquRed();
                Console.Write("Prezado colaborador, digite seu username: "******"Agora digite sua senha numerica: ");
                int senha = int.Parse(Console.ReadLine());
                Console.WriteLine();
                Console.Clear();
                if (lg.VerificaUsuario(username, senha) == true)
                {
                    // Menu da locadora
                    ft.Altura();
                    ft.MargEsqu();
                    Console.WriteLine("Locadora Total Video");
                    Console.WriteLine();
                    Console.Write("\t\t\t\t\tOlá " + ti.ToTitleCase(username));// a primeira letra do usename vai para maiuscula
                    Console.WriteLine(", digite uma opçao do menu:\n");
                    ft.Linha();
                    Console.WriteLine("\n 1 Acervo Completo │ 2 Acervo disponível │ 3 Acervo Locado │ 4 Procurar filme │ 5 Locar │ 6 Devolução │ 7 lista de clientes │ 8 Procurar cliente | 9 sair");
                    ft.Linha();
                    Console.WriteLine();
                    ft.MargEsqu();
                    Console.Write("Digite sua opção aqui: ");
                }
                else
                {
                    ft.Altura();
                    ft.MargEsqu();
                    Console.WriteLine("Atenção! Username e/ou senha incorreto");
                }

                // Menu da locadora repetido
                int n = 0;
                //Loop enquanto 'n' for diferente do inteiro '9'
                while (n != 9)
                {
                    n = int.Parse(Console.ReadLine());

                    Console.Clear();
                    ft.Altura();
                    ft.MargEsqu();
                    Console.WriteLine("Locadora Total Video");
                    Console.WriteLine();
                    Console.Write("\t\t\t\t\tOlá " + ti.ToTitleCase(username));
                    Console.WriteLine(", digite uma opçao do menu:\n");
                    ft.Linha();
                    Console.WriteLine("\n 1 Acervo Completo │ 2 Acervo disponível │ 3 Acervo Locado │ 4 Procurar filme │ 5 Locar │ 6 Devolução │ 7 lista de clientes │ 8 Procurar cliente | 9 sair");
                    ft.Linha();
                    Console.WriteLine();

                    switch (n)
                    {
                    case 1:
                        ac.ListaAcervo();
                        break;

                    case 2:
                        acd.ListaAcervoDisp();
                        break;

                    case 3:
                        acl.ListaAcervoLoc();
                        break;

                    case 4:
                        ft.MargEsqu();
                        Console.WriteLine("\t\tProcura de Filmes");
                        Console.Write("\t\t\t\t\t");
                        Console.Write("Digite um termo de busca (SEM ACENTOS, nome ou parte do nome do filme): ");
                        acp.Nome = Console.ReadLine().ToLower();
                        acp.Procura(acp.Nome);
                        break;

                    case 5:
                        ft.MargEsqu();
                        Console.WriteLine("Locação de Filmes");
                        ft.MargEsqu();
                        Console.Write("Digite o código do filme desejado: ");
                        lc.CodigoFilm = int.Parse(Console.ReadLine());
                        ft.MargEsqu();
                        Console.Write("Digite o código do Cliente: ");
                        lc.CodigoCli = int.Parse(Console.ReadLine());
                        lc.DataLoca  = DateTime.Now;
                        lc.Locar(lc.CodigoCli, lc.CodigoFilm, lc.DataLoca);
                        break;

                    case 6:
                        ft.MargEsqu();
                        Console.WriteLine("Devolução de Filmes");
                        ft.MargEsqu();
                        Console.Write("Digite o código do cliente: ");
                        devol.CodigoCli = int.Parse(Console.ReadLine());
                        devol.DataDevol = DateTime.Now;
                        devol.Calculo(devol.CodigoCli, devol.DataDevol, devol.CodigoFilm);
                        break;

                    case 7:
                        cli.ListaClientes();
                        break;

                    case 8:
                        ft.MargEsqu();
                        Console.WriteLine("\t\tProcura de Clientes");
                        Console.Write("\t\t\t\t\t");
                        Console.Write("Digite um termo de busca (SEM ACENTOS, nome ou parte do nome do cliente): ");
                        clipr.Nome = Console.ReadLine().ToLower();
                        clipr.ProcuraCli(clipr.Nome);
                        break;
                    }
                }
            }
            catch (IOException e)
            {
                Console.WriteLine("Ocorreu um erro!");
                Console.WriteLine(e.Message);
            }
        }
Example #2
0
 public void Adicionar(Acervo acervo)
 {
     _db.Add(acervo);
     _db.SaveChanges();
 }
Example #3
0
        // Estabelecendo a função 'Locar'
        public void Locar(int codigoCli, int codigoFilm, DateTime dataLoca)
        {
            //Declarando as classes one estão funções que serão utilizadas aqui
            Acervo     ac = new Acervo();
            Clientes   cl = new Clientes();
            Formatacao ft = new Formatacao();

            //Acessando os arquivos de texto 'Acervo' e 'Clientes'
            StreamReader sr    = File.OpenText(ac.Caminho());
            StreamReader srCli = File.OpenText(cl.CaminhoCli());

            // Lendo e armazenando os dados dos clientes
            while (!srCli.EndOfStream)
            {
                string[] lineCli    = srCli.ReadLine().Split(',');
                int      codigocli2 = int.Parse(lineCli[0]);
                string   nomeCli2   = lineCli[1];

                // Selecionando o cliente em questão
                if (codigoCli.Equals(codigocli2))
                {
                    Console.WriteLine();
                    ft.MargEsqu();
                    Console.WriteLine("Codigo do cliente: " + codigocli2);
                    ft.MargEsqu();
                    Console.WriteLine("Cliente: " + nomeCli2);
                }
            }

            // Lendo e armazenando os dados do acervo
            while (!sr.EndOfStream)
            {
                string[] line    = sr.ReadLine().Split(',');
                int      codigo  = int.Parse(line[0]);
                string   titulo  = line[1];
                string   cliente = line[3];

                // Verificando se o filme está disponível para locação
                if (codigoFilm.Equals(codigo) && cliente == "")
                {
                    Console.WriteLine();

                    // Traçando uma linha horizontal
                    ac.LinhaHorizontaL();

                    // Estando disponível, as informações do filme e do cliente serão apresentados para conferência
                    ft.MargEsqu();
                    Console.Write(ft.Caracter() + " Código do filme /       Título        /  Data da Locação ");
                    int conta5 = (ft.Caracter() + " Código do filme /       Título        /  Data da Locação ").Count();
                    int conta6 = ac.CountMaxCaract() - conta5 - 2;
                    for (int i = 1; i < conta6; i++)
                    {
                        Console.Write(" ");
                    }
                    Console.WriteLine(ft.Caracter());

                    // Traçando uma linha horizontal
                    ac.LinhaHorizontaL();

                    int conta  = (ft.Caracter() + "\t" + codigoFilm + " . . ." + titulo + "     " + dataLoca.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture)).Count();
                    int conta2 = ac.CountMaxCaract() - conta - 8;
                    ft.MargEsqu();
                    Console.Write(ft.Caracter() + "\t" + codigoFilm + " . . ." + titulo + "     " + dataLoca.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture));
                    for (int i = 1; i < conta2; i++)
                    {
                        Console.Write(" ");
                    }
                    Console.WriteLine(ft.Caracter());

                    // Traçando uma linha horizontal
                    ac.LinhaHorizontaL();

                    // Confirmar ou não a locação
                    Console.WriteLine();
                    ft.MargEsqu();
                    Console.WriteLine("Confirma as informações? (s =sim e n=não)");
                    ft.MargEsqu();
                    char opcao = char.Parse(Console.ReadLine());
                    if (opcao == 's' || opcao == 'S')
                    {
                        ft.MargEsqu();
                        Console.WriteLine("Informação gravada com sucesso!");
                        ft.MargEsqu();
                        Console.Write("Digite uma opção do menu: ");
                        break;
                    }
                    else
                    {
                        ft.MargEsqu();
                        Console.WriteLine("Informação descartada");
                        ft.MargEsqu();
                        Console.Write("Digite uma opção do menu: ");
                        break;
                    }
                }

                //Caso o filme já tenha sido locado
                if (codigoFilm.Equals(codigo) && cliente != "")
                {
                    Console.WriteLine();
                    ft.MargEsqu();
                    Console.WriteLine("Esse filme já está locado, sinto muito");
                    Console.WriteLine();
                    ft.MargEsqu();
                    Console.Write("Digite uma opção do menu: ");
                }
            }
        }