예제 #1
0
 /// <summary>
 /// Metodo para agregar evento que trata las excepciones que se producen con las fechas del mismo
 /// </summary>
 /// <param name="pTitulo">Titulo del evento</param>
 /// <param name="pFechaInicio">Fecha de inicio del evento</param>
 /// <param name="pFechaFin">Fecha de fin del evento</param>
 /// <param name="pFrecuencia">Frecuencia del evento</param>
 /// <param name="pCalendario">Calendario al cual que va a agregar el evento</param>
 public static void eAgregarEvento(string pTitulo, DateTime pFechaInicio, DateTime pFechaFin, TipoFrecuencia pFrecuencia, Calendario pCalendario)
 {
     try
     {
         pCalendario.AgregarEvento(pTitulo, pFechaInicio, pFechaFin, pFrecuencia);
     }
     catch (FechaFinInvalidaException excepcion)
     {
         Console.WriteLine("Se ha producido una excepcion {0}", excepcion.Message);
     }
     catch (FechaInicioInvalidaException exception)
     {
         Console.WriteLine("Se ha producido una excepcion {0}", exception.Message);
     }
 }
예제 #2
0
        /// <summary>
        /// Metodo para filtrar eventos por su titulo
        /// </summary>
        /// <param name="pTituloEvento">Titulo por el cual se desea buscar eventos</param>
        /// <returns> Devuelve una lista de eventos con el titulo pTituloEvento </returns>
        public Calendario FiltrarPor(string pTituloEvento)
        {
            Calendario eventos = new Calendario(pTituloEvento);

            foreach (Evento elemento in this.Evento)
            {
                if (elemento.Titulo == pTituloEvento)
                {
                    eventos.AgregarEvento(elemento.Titulo, elemento.FechaInicio, elemento.FechaFin, elemento.Frecuencia);
                }
            }
            if (eventos.Evento.Count == 0)
            {
                CalendarioVacioException Excepcion = new CalendarioVacioException("No se han encontrado eventos");
                throw Excepcion;
            }
            return(eventos);
        }
예제 #3
0
        /// <summary>
        /// Metodo para filtrar eventos entre la primer fecha y la segunda fecha
        /// </summary>
        /// <param name="pFecha1">Primer fecha </param>
        /// <param name="pFecha2">Segunda Fecha</param>
        /// <returns>Devuelve una lista de los eventos que cumplan la condición </returns>
        public Calendario FiltrarPor(DateTime pFecha1, DateTime pFecha2)
        {
            Calendario eventos = new Calendario("EventosPorFechas");

            foreach (Evento elemento in this.Evento)
            {
                if (elemento.FechaInicio >= pFecha1 && elemento.FechaFin <= pFecha2 &&
                    elemento.FechaFin <= pFecha2 && elemento.FechaInicio >= pFecha1)
                {
                    eventos.AgregarEvento(elemento.Titulo, elemento.FechaInicio, elemento.FechaFin, elemento.Frecuencia);
                }
            }
            if (eventos.Evento.Count == 0)
            {
                CalendarioVacioException Excepcion = new CalendarioVacioException("No se han encontrado eventos");
                throw Excepcion;
            }
            return(eventos);
        }