public static HoraNoDisponible[] LeerTodosHorariosMenosEste(int idgrupo, int idClase) { List <HoraNoDisponible> hr = new List <HoraNoDisponible>(); try { comando.CommandText = "SELECT * FROM Horario WHERE NOT grupo =" + idgrupo + "AND clase=" + idClase; conectar.Open(); OleDbDataReader lector = comando.ExecuteReader(); while (lector.Read()) { int dia = (int)lector["dia"]; int hora = (int)lector["hora"]; HoraNoDisponible s = new HoraNoDisponible(hora, dia); hr.Add(s); } return(hr.ToArray()); } finally { if (conectar.State == ConnectionState.Open) { conectar.Close(); } } }
/// <summary> OBTENER HORAS NO DISPONIBLES DE UN PROFESOR </summary> public static HoraNoDisponible[] leerHorasNoDisponiblesDe(int idProfe) { List <HoraNoDisponible> horasLista = new List <HoraNoDisponible>(); //REVISAR try { comando.CommandText = "SELECT * FROM HorasNoDisponibles WHERE profesor= " + idProfe; comando.CommandType = CommandType.Text; conectar.Open(); OleDbDataReader lector = comando.ExecuteReader(); while (lector.Read()) { int id = (int)lector["ID"]; int hora = (int)lector["hora"]; int dia = (int)lector["dia"]; HoraNoDisponible hnd = new HoraNoDisponible(hora, dia); hnd.Id = id; horasLista.Add(hnd); } return(horasLista.ToArray()); } finally { if (conectar.State == ConnectionState.Open) { conectar.Close(); } } }
/// <summary> Elimina una hora seleccionada </summary> private void bttnEliminarHoraProfesor_Click(object sender, EventArgs e) { if(lstListaHorariosProfesor.SelectedIndex!=-1) { HoraNoDisponible hnd = lstListaHorariosProfesor.SelectedItem as HoraNoDisponible; Conector.borrarHoraNoDisponible(hnd); LlenarListaHoras(); } else { MessageBox.Show("Se requiere seleccionar un horario de la lista", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
/// <summary> BORRAR HORAS NO DISPONIBLES, SOLO PIDE HND POR QUE SOLO OCUPAS EL ID DE LA HORA SELECICONADA QUE ES UN OBJETO HND </summary> public static void borrarHoraNoDisponible(HoraNoDisponible hnd) { try { comando.CommandText = "DELETE FROM HorasNoDisponibles WHERE ID =" + hnd.Id; comando.CommandType = CommandType.Text; conectar.Open(); comando.ExecuteNonQuery(); } finally { if (conectar.State == ConnectionState.Open) { conectar.Close(); } } }
/// <summary> registra las horas no disponibles del maestro indicado en la base de datos </summary> public static void agregarHorariosNoDisponibles(int idProfe, HoraNoDisponible hnd)//Agregar a la base de datos { try { //revisar en la base de datos bien comando.CommandText = "INSERT INTO HorasNoDisponibles " + "(profesor, hora, dia)" + "VALUES('" + idProfe + "', '" + hnd.Hora + "', '" + hnd.Dia + "')"; comando.CommandType = CommandType.Text; conectar.Open(); comando.ExecuteNonQuery(); } finally { if (conectar.State == ConnectionState.Open) { conectar.Close(); } } }
/// <summary> Agrega una hora, ya validada </summary> private void bttnAgregarHorario_Click(object sender, EventArgs e) { Boolean noEsta = true ; if (cmbDia.SelectedIndex == -1 && cmbHora.SelectedIndex == -1) { MessageBox.Show("Se requiere seleccionar un 'dia' y una 'hora'", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { int hora = cmbHora.SelectedIndex + 1; int dia = cmbDia.SelectedIndex + 1; HoraNoDisponible[] horasND = Conector.leerHorasNoDisponiblesDe(idProfe); for (int i = 0; i < horasND.Length; i++) { if (horasND[i].Dia == dia && horasND[i].Hora == hora) { noEsta = false; break; } } if (noEsta) { HoraNoDisponible hnd = new HoraNoDisponible(hora, dia); Conector.agregarHorariosNoDisponibles(idProfe, hnd); LlenarListaHoras(); } else { MessageBox.Show("este hora y dia ya se encuentra agregado con este profesor", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } }