public void AltaAgenda_Load(object sender, EventArgs e)
        {
            franja_inicio.Value = Fechas.getCurrentDateTime().Date;
            franja_fin.Value    = Fechas.getCurrentDateTime().Date;
            if (id_rol == 3) ///Es profesional
            {
                Int64 matricula = Profesional.matriculaPorUsuario(id_usuario);
                if (matricula != -1)
                {
                    profesional = Profesional.traerProfesionalPorMatricula(matricula);
                }
                else //NO hay matricula en un profesional
                {
                    MessageBox.Show("Error, el usuario con el que se ingresó tiene rol de Profesional pero no tiene matricula", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    this.Close();
                }
            }
            else if (id_rol == 2 || id_rol == 4)
            {
                SeleccionarProfesional formulario = new SeleccionarProfesional();
                formulario.ShowDialog();
                Boolean cerradoPorusuario = false;
                profesional = (Profesional)((DataGridView)formulario.Controls["dgv_profesional"]).CurrentRow.DataBoundItem;
                if (formulario.fueCerradoPorUsuario == true)
                {
                    cerradoPorusuario = true;
                }

                if (formulario.fueCerradoPorUsuario == true)
                {
                    this.Close();
                }
                formulario.Close();
            }
            else
            {
                MessageBox.Show("El usuario actual no deberia tener acceso a esta funcionalidad.", "Clinica-FRBA: ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.Close();
            }
            List <Especialidad> especialidades = Especialidad.especialidadesPorProfesional(profesional.matricula);

            label_agenda.Text = "Agenda de: " + profesional.nombre + " " + profesional.apellido;
            l_especialidad.Items.AddRange(especialidades.ToArray());
        }
        private void PedirTurno_Load(object sender, EventArgs e)
        {
            if (id_rol == 1) //Es afilliado
            {
                Int64 id_afiliado = Afiliado.getIdAfiliadoPorUsuario(id_usuario);
                if (id_afiliado == -1) //No tiene id_afiliado
                {
                    MessageBox.Show("Error, el usuario con el que se ingresó tiene rol de Afiliado pero no tiene id_afiliado", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    this.cerrar = true;
                    this.Close();
                }
                afiliado = Afiliado.getAfiliadoPorID(id_afiliado);
            }
            else
            {
                MessageBox.Show("Error, el usuario con el que se ingresó no tiene rol de Afiliado, no deberia poder ver esta funcionalidad.", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.cerrar = true;
                this.Close();
            }
            if (cerrar == false)
            {
                SeleccionarProfesionalPorEspecialidad formularioProf = new SeleccionarProfesionalPorEspecialidad();
                formularioProf.ShowDialog();
                profesionalElegido  = (Profesional)((DataGridView)formularioProf.Controls["dgv_profesional"]).CurrentRow.DataBoundItem;
                especialidadElegida = (Especialidad)((ComboBox)formularioProf.Controls["cb_especialidad"]).SelectedItem;
                if (!formularioProf.fueCerradoPorUsuario)
                {
                    if (especialidadElegida.id_especialidad == -1) //Todavia no eligio especialidad
                    {
                        SeleccionarEspecialidad formularioEsp = new SeleccionarEspecialidad(Especialidad.especialidadesPorProfesional(profesionalElegido.matricula));
                        formularioEsp.ShowDialog();
                        if (formularioEsp.fueCerradoPorUsuario)
                        {
                            this.Close();                                    //El usuario se va
                        }
                        else
                        {
                            especialidadElegida = (Especialidad)((ComboBox)formularioEsp.Controls["cb_especialidad"]).SelectedItem;
                        }
                    }
                    label_nombre_profesional.Text = "Turnos disponibles con el Dr./Dra. " + profesionalElegido.apellido + ", " + profesionalElegido.nombre;
                    label_especialidad.Text       = "Especialidad: " + especialidadElegida.descripcion;
                    CalcularDiasRango();
                    actualizarAnios();
                    actualizarDias();
                    actualizarMeses();

                    horarios = new List <TimeSpan>();
                    if (cb_anio.SelectedItem != null && cb_mes.SelectedItem != null && cb_dia_mes.SelectedItem != null)
                    {
                        CalcularHorarios();
                    }
                }
                else
                {
                    this.Close();
                }
            }
        }