Exemplo n.º 1
0
        static void CadastrarPresoFeminino()
        {
            List <Presidiario> Simples     = new List <Presidiario>();
            List <Presidiario> Qualificado = new List <Presidiario>();
            List <Presidiario> Hediondo    = new List <Presidiario>();

            CelaFeminina cela1 = new CelaFeminina();
            CelaFeminina cela2 = new CelaFeminina();
            CelaFeminina cela3 = new CelaFeminina();


            Presidio Xuri2 = new Presidio(cela1, cela2, cela3);

            Presidiario P1 = new Presidiario();



            Console.WriteLine("Opções de crimes:");
            Console.WriteLine("| 1 - Simples; 2 - Qualificado; 3 - Hediondo |");
            Console.Write("> Digite o tipo de crime: ");
            int crime = int.Parse(Console.ReadLine());

            while (!P1.setCrime(crime))
            {
                Console.WriteLine("Opção inválida! Tipo de crime inexistente!");
                Console.WriteLine("| 1 - Simples; 2 - Qualificado; 3 - Hediondo |");
                Console.Write("> Por favor, tente novamente: ");
                crime = int.Parse(Console.ReadLine());
            }
            P1.setCrime(crime);

            if (P1.getCrime() == 1)
            {
                while (!cela1.VerificaCelaFeminina1())
                {
                    Console.WriteLine("Opção inválida! A cela está cheia!");
                    Console.WriteLine();
                    Menu();
                    break;
                }
            }

            if (P1.getCrime() == 2)
            {
                while (!cela2.VerificaCelaFeminina2())
                {
                    Console.WriteLine("Opção inválida! A cela está cheia!");
                    Console.WriteLine();
                    Menu();
                    break;
                }
            }

            if (P1.getCrime() == 3)
            {
                while (!cela3.VerificaCelaFeminina3())
                {
                    Console.WriteLine("Opção inválida! A cela está cheia!");
                    Console.WriteLine();
                    Menu();
                    break;
                }
            }

            Console.Write("> Nome: ");
            string nome = Console.ReadLine();

            while (true)
            {
                try
                {
                    P1.setNome(nome);
                    break;
                }
                catch (Nomeinvalido)
                {
                    Console.WriteLine("Nome invalido");
                    Console.WriteLine("> Por favor, tente novamente: ");
                    nome = Console.ReadLine();
                }
            }


            Console.Write("> ID (4 primeiros dígitos do CPF): ");
            string id = Console.ReadLine();

            while (true)
            {
                try
                {
                    P1.verificarId(id);
                    break;
                }
                catch (ID_Invalido)
                {
                    Console.WriteLine("ID invalido");
                    Console.WriteLine("> Por favor, tente novamente: ");
                    Console.WriteLine("Digite 4 primeiros dígitos do CPF");
                    id = Console.ReadLine();
                }
            }

            Data dat = new Data();

            Console.Write("> Data de nascimento (DD/MM/AAAA): ");
            string datanascimento = Console.ReadLine();

            while (!dat.setData(datanascimento))
            {
                Console.WriteLine("Data de nascimento inválida!");
                Console.Write("> Por favor, tente novamente: ");
                datanascimento = Console.ReadLine();
            }

            Data nascimento = new Data(datanascimento);

            while (!P1.setDataDeNascimento(nascimento))
            {
                Console.WriteLine("Data de nascimento inválida!");
                Console.Write("> Por favor, tente novamente: ");
                datanascimento = Console.ReadLine();
                nascimento     = new Data(datanascimento);
            }
            P1.setDataDeNascimento(nascimento);


            if (P1.getCrime() == 1)
            {
                P1.setPeriodoDeReclusao(15);
                Simples.Add(P1);
                cela1.setPreso(Simples);
                Xuri2.Cadastrar_presosFeminina1();
            }

            else if (P1.getCrime() == 2)
            {
                P1.setPeriodoDeReclusao(20);
                Qualificado.Add(P1);
                cela2.setPreso(Qualificado);
                Xuri2.Cadastrar_presosFeminina2();
            }

            else if (P1.getCrime() == 3)
            {
                P1.setPeriodoDeReclusao(30);
                Hediondo.Add(P1);
                cela3.setPreso(Hediondo);
                Xuri2.Cadastrar_presosFeminina3();
            }

            Console.WriteLine("Cadastrar novo preso?");
            Console.Write("| 1 - Sair; 2 - Sim;  3 - Menu principal |");
            Console.WriteLine("> Digite a opção desejada:");
            int re = int.Parse(Console.ReadLine());

            if (re == 3)
            {
                Menu();
            }

            else if (re == 2)
            {
                CadastrarPreso();
            }

            else
            {
                Console.WriteLine(" Sistema finalizado com sucesso: ");
            }
        }