예제 #1
0
        static void TomarAsistencia(Preceptor p)
        {
            List <Asistencia> nuevaAsistencia = new List <Asistencia>();
            // Ingreso fecha
            string fecha;
            int    day;
            int    month;
            int    year;

            day   = Validacion.PedirEntero("Ingrese dia");
            month = Validacion.PedirEntero("Ingrese mes");
            year  = Validacion.PedirEntero("Ingrese año");

            fecha = $"{year}-{month}-{day}";

            // Listar los alumnos

            foreach (Alumno item in _presentismo.ListaAlumnos)
            {
                if (item is AlumnoRegular)
                {
                    bool       presente   = Validacion.PedirBooleano("Ingrese 1 para presente, 2 para ausente");
                    Asistencia asistencia = new Asistencia(fecha, DateTime.Now, p, item, presente);
                    nuevaAsistencia.Add(asistencia);
                }
            }

            _presentismo.AgregarAsistencia(nuevaAsistencia, fecha);
            // para cada alumno solo preguntar si está presente
            // agrego la lista de asistencia
            // Error: mostrar el error y que luego muestre el menu nuevamente
        }
예제 #2
0
        static void Main(string[] args)
        {
            Preceptor preceptorActivo = _presentismo.GetPreceptorActivo();
            bool      continuar       = true;

            do
            {
                DesplegarOpcionesMenu();
                string opcionMenu = Console.ReadLine(); // pedir el valor
                switch (opcionMenu)
                {
                case "1":
                    TomarAsistencia(preceptorActivo);
                    break;

                case "2":
                    MostrarAsistencia();
                    break;

                case "X":
                    continuar = false;
                    break;

                default:
                    break;
                }
            } while (continuar);
        }
예제 #3
0
        static void Main(string[] args)
        {
            Preceptor preceptorActivo = _presentismo.GetPreceptorActivo();

            DesplegarOpcionesMenu();
            string opcionMenu = ""; // pedir el valor

            switch (opcionMenu)
            {
            case "1":
                TomarAsistencia(preceptorActivo);
                break;

            case "2":
                MostrarAsistencia();
                break;

            case "X":
                // SALIR
                break;

            default:
                break;
            }
        }
예제 #4
0
 static void TomarAsistencia(Preceptor p)
 {
     // Ingreso fecha
     // Listar los alumnos
     // para cada alumno solo preguntar si está presente
     // agrego la lista de asistencia
     // Error: mostrar el error y que luego muestre el menu nuevamente
 }
예제 #5
0
파일: Program.cs 프로젝트: Yumita22/YumiCAI
        static void TomarAsistencia(Preceptor p)
        {
            // Ingreso fecha

            List <Asistencia> asistencias = new List <Asistencia>();

            Console.WriteLine("Ingrese una fecha");
            string fecha = Console.ReadLine();

            // Listar los alumnos
            try
            {
                Console.WriteLine(_presentismo.GetListaAlumnos(_presentismo.Alumnos));
            }
            catch (SinAlumnosRegistradosException ex)
            {
                Console.WriteLine((ex.Message));
            }
            // para cada alumno solo preguntar si está presente

            foreach (Alumno a in _presentismo.Alumnos)
            {
                if (a is AlumnoRegular)
                {
                    bool presente = false;
                    Console.WriteLine(a.ToString());
                    Console.WriteLine("¿está presente? (S/N)");
                    string asistencia = Console.ReadLine();
                    if (asistencia.Equals("S"))
                    {
                        presente = true;
                    }
                    asistencias.Add(new Asistencia(fecha, a, p, presente));
                }
            }
            // agrego la lista de asistencia
            // Error: mostrar el error y que luego muestre el menu nuevamente
            try
            {
                _presentismo.AgregarAsistencia(asistencias, fecha);
            }
            catch (AsistenciaExistenteEseDiaException ex)
            {
                Console.WriteLine(ex.Message);
                DesplegarOpcionesMenu();
            }
        }
예제 #6
0
        static void TomarAsistencia(Preceptor p)
        {
            List <Asistencia> listaAsistencia = new List <Asistencia>();

            // entrada y validacion de datos
            DateTime fechaReal       = _consola.IngresarTiempo();
            string   fechaAsistencia = Convert.ToString(fechaReal);

            bool yaRegistrada = _presentismo.AsistenciaRegistrada(fechaAsistencia);

            if (yaRegistrada)
            {
                throw new AsistenciaExistenteEseDiaException($"ya existen asistencias con esta fecha {fechaAsistencia}.");
            }

            List <Alumno> listaAlumnos = _presentismo.GetListaAlumnos();

            if (listaAlumnos.Count() == 0)
            {
                throw new SinAlumnosRegistradosException("no existen alumnos registrados para tomar asistencia.");
            }

            // generacion de asistencia por cada alumno en la lista
            foreach (Alumno alumno in listaAlumnos)
            {
                _consola.MostrarMensaje($"esta presente el alumno {alumno.Display()}? (si / no)");

                string respuesta = _consola.IngresarOpcion(new List <string> {
                    "si", "no"
                });
                bool presente = respuesta == "si";

                Asistencia nuevaAsistencia = new Asistencia(fechaAsistencia, fechaReal, p, alumno, presente);

                listaAsistencia.Add(nuevaAsistencia);
            }
            _presentismo.AgregarAsistencia(listaAsistencia);
        }
예제 #7
0
        static void Main(string[] args)
        {
            Preceptor preceptorActivo = _presentismo.GetPreceptorActivo();
            string    opcionMenu      = "";

            do
            {
                try
                {
                    DesplegarOpcionesMenu();
                    opcionMenu = _consola.IngresarOpcion(new List <string> {
                        "1", "2", "X"
                    });
                    switch (opcionMenu)
                    {
                    case "1":
                        TomarAsistencia(preceptorActivo);
                        break;

                    case "2":
                        MostrarAsistencia();
                        break;

                    case "X":
                        // SALIR
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception ex)
                {
                    _consola.MostrarMensaje("error");
                    _consola.MostrarMensaje(Convert.ToString(ex));
                }
            } while (opcionMenu != "X");
        }