Пример #1
0
        public void BuscarTurnosLibres()
        {
            gestorHorario = new GestorHorario();
            horario = new Horario();
            listaDet = new List<HorarioDetalle>();
            horarioDet = null;

            for (int i = 0; i < listaHorario.Count; i++)
            {
                if (listaHorario[i].Desde <= DateTime.Parse(dpDesde.Value.ToShortDateString()) && listaHorario[i].Hasta >= DateTime.Parse(dpDesde.Value.ToShortDateString()))
                {
                    horario = listaHorario.ElementAt<Horario>(i);
                    listaDet = horario.Detalle;
                }
            }

            if (listaDet.Count > 0)
            {
                gestorHD = new GestorHorarioDetalle();
                for (int i = 0; i < listaDet.Count; i++)
                {
                    gestorDia = new GestorDia();
                    Dia dia = gestorDia.buscar(dpDesde.Value.DayOfWeek.ToString());
                    if (dia == listaDet[i].Dia)
                    {
                        if (gestorHD.buscar(listaDet.ElementAt<HorarioDetalle>(i).Id, dia) != null)
                        {
                            horarioDet = new HorarioDetalle();
                            horarioDet = gestorHD.buscar(listaDet.ElementAt<HorarioDetalle>(i).Id, dia);
                        }
                    }
                }
                if (horarioDet != null)
                {
                    cargarHora(horarioDet);
                }
            }
        }
Пример #2
0
        public void ValidarFechaYHora()
        {
            GestorHorario gestorHorario = new GestorHorario();
            horario = new Horario();
            horarioDet = new HorarioDetalle();

            for (int i = 0; i < horarios.Count; i++)
            {
                if (horarios[i].Desde <= DateTime.Parse(dpFecha.Value.ToShortDateString()) && horarios[i].Hasta >= DateTime.Parse(dpFecha.Value.ToShortDateString()))
                {
                    listadet = horarios[i].Detalle;
                }
            }
            if (listadet.Count == 0)
            {
                MessageBox.Show("No hay agendas disponibles para esa fecha","Información");
            }
            for (int j = 0; j < listadet.Count; j++)
            {
                GestorDia gestorDia = new GestorDia();
                Dia dia = gestorDia.buscar(dpFecha.Value.DayOfWeek.ToString());
                if (dia == listadet[j].Dia)
                {
                    horarioDet = listadet.ElementAt<HorarioDetalle>(j);
                }
            }
            if (horarioDet.Id != 0)
            {
                IList<Turno> listaTurno = new List<Turno>();
                listaTurno = gestor.buscarTodos(horarioDet, DateTime.Parse(dpFecha.Value.ToShortDateString()), DateTime.Parse(dpFecha.Value.ToShortDateString()));
                if (listaTurno.Count > 0)
                {
                    for (int i = 0; i < listaTurno.Count; i++)
                    {
                        if (listaTurno[i].Hora.ToShortTimeString() == dpHora.Value.ToShortTimeString())
                        {
                            dpHora.Value = turno.Hora;
                            MessageBox.Show("Este turno ya esta asignado", "Turno asignado");
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("El profesional o area de servicio no atiende el día de la semana seleccionado","Día no válido");
                dpFecha.Value = turno.Fecha;
            }
        }
        public void CargarDetalle(IList<HorarioDetalle> lista, string agenda, int idagenda,int idmatricula,DateTime fecha)
        {
            gestorHD = new GestorHorarioDetalle();
            for (int i = 0; i < lista.Count; i++)
            {
                horarioDet = null;
                GestorDia gestorDia = new GestorDia();
                Dia dia = gestorDia.buscar(fecha.DayOfWeek.ToString());
                if (dia == listaDet[i].Dia)
                {
                    if (gestorHD.buscar(lista.ElementAt<HorarioDetalle>(i).Id, dia) != null)
                    {
                        horarioDet = new HorarioDetalle();
                        horarioDet = gestorHD.buscar(lista.ElementAt<HorarioDetalle>(i).Id, dia);
                    }
                }
                if (horarioDet != null)
                {
                    cargarHora(horarioDet, fecha, agenda,idagenda,idmatricula);
                    gestorTurno = new GestorTurno();

                    listaTurno = gestorTurno.buscarTodos(horarioDet, fecha, fecha);
                    if (listaTurno.Count > 0)
                    {
                        for (int f = 0; f < listaTurno.Count; f++)
                        {
                            for (int k = 0; k < dgTurnos.Rows.Count; k++)
                            {
                                if (dgTurnos.Rows[k].Cells[1].Value.ToString() == listaTurno[f].Hora.ToShortTimeString() && dgTurnos.Rows[k].Cells[0].Value.ToString() == listaTurno[f].Fecha.ToShortDateString())
                                {
                                    dgTurnos.Rows.RemoveAt(k);
                                }
                            }
                        }
                    }
                }
            }
        }