Ejemplo n.º 1
0
        public void ComprarBoleto()
        {
            int opc;

            do
            {
                Console.Clear();
                _peliculas.ImprimirCartelera();
                Console.SetCursorPosition(0, 21);
                Colorful.Console.Write("Seleccione el número de la sala", Color.AliceBlue);
                Console.SetCursorPosition(0, 22);
                isNumber = int.TryParse(Console.ReadLine(), out opc);
                _peliculaSeleccionada = _peliculas.ListaPeliculas.Find(pelicula => pelicula.IdPelicula == opc);
            } while (isNumber == false || _peliculaSeleccionada == null);

            do
            {
                Console.Clear();
                Colorful.Console.WriteAscii(_peliculaSeleccionada.Nombre, ColorTranslator.FromHtml("#e91e63"));
                Console.WriteLine("Sinopsis: ");
                Console.WriteLine(_peliculaSeleccionada.Sinopsis);
                Console.WriteLine("\n\n");
                Console.WriteLine("Seleccione un horario:");

                int i = 1;
                foreach (var item in _peliculaSeleccionada.Horarios)
                {
                    Colorful.Console.WriteLine("[" + i++ + "] " + item);
                }

                isNumber = int.TryParse(Console.ReadLine(), out opc);
                opc--;
            } while (isNumber == false || opc < 0 || opc >= 3);

            _horario = opc;

            int boletosAdulto, boletosAdulMayor, boletoNino;

            do
            {
                ValidarBoleto("Ingrese la cantidad de boletos para adulto: ", out boletosAdulto, _peliculaSeleccionada);
                ValidarBoleto("Ingrese la cantidad de boletos para adulto mayor: ", out boletosAdulMayor, _peliculaSeleccionada);
                ValidarBoleto("Ingrese la cantidad de boletos para niño: ", out boletoNino, _peliculaSeleccionada);
            } while ((boletosAdulto + boletosAdulMayor + boletoNino) <= 0);

            _pagoTotal    = (boletosAdulto * 4.25) + (boletosAdulMayor * 3.25) + (boletoNino * 2.25);
            _totalBoletos = boletosAdulto + boletosAdulMayor + boletoNino;

            _peliculaSeleccionada.CantidadBoletos[_horario][0] += boletosAdulto;
            _peliculaSeleccionada.CantidadBoletos[_horario][1] += boletosAdulMayor;
            _peliculaSeleccionada.CantidadBoletos[_horario][2] += boletoNino;

            _peliculaSeleccionada.Ingresos[_horario] += _pagoTotal;

            SelecAsientos(_totalBoletos);
        }
        public void Configuracion()
        {
            int opc;

            do
            {
                Console.Clear();
                _peliculas.ImprimirCartelera();

                Console.SetCursorPosition(0, 0);
                Colorful.Console.WriteAscii("Configuraciones");

                Console.SetCursorPosition(0, 18);
                Console.WriteLine("           ");
                Console.SetCursorPosition(0, 19);
                Console.WriteLine("Selecciona una película para reiniciar            ");

                Console.SetCursorPosition(0, 22);
                isNumber = int.TryParse(Console.ReadLine(), out opc);
                _peliculaSeleccionada = _peliculas.ListaPeliculas.Find(pelicula => pelicula.IdPelicula == opc);
            } while (isNumber == false || _peliculaSeleccionada == null);

            do
            {
                Console.Clear();
                Colorful.Console.WriteAscii(_peliculaSeleccionada.Nombre, ColorTranslator.FromHtml("#e91e63"));
                Console.WriteLine("Sinopsis: ");
                Console.WriteLine(_peliculaSeleccionada.Sinopsis);
                Console.WriteLine("\n\n");
                Console.WriteLine("Seleccione un horario:");

                int i = 1;
                foreach (var item in _peliculaSeleccionada.Horarios)
                {
                    Colorful.Console.WriteLine("[" + i++ + "] " + item);
                }

                isNumber = int.TryParse(Console.ReadLine(), out opc);
                opc--;
            } while (isNumber == false || opc < 0 || opc >= 3);

            _horario = opc;

            _peliculaSeleccionada.Butacas[_horario]         = new bool[10, 10];
            _peliculaSeleccionada.CantidadBoletos[_horario] = new List <int> {
                0, 0, 0
            };
            _peliculaSeleccionada.Ingresos[_horario] = 0.0;

            Console.WriteLine("Butaca reestablecida!");

            Console.ReadKey();
            MenuInicial menuInicial = new MenuInicial(_peliculas);
        }