private void eliminar_Click(object sender, EventArgs e) { AgendaDiaria dia = (AgendaDiaria)horarios.CurrentRow.DataBoundItem; agendaDeTrabajo.Remove(dia); actualizarLista(); }
private void aceptar_Click(object sender, EventArgs e) { //AGARRO EL DIA Dia unDia = (Dia)dias.SelectedItem; //AGARR0 LAS HORAS Hora horaD = ((Hora)horaDesde.SelectedItem); Hora horaH = ((Hora)horaHasta.SelectedItem); TimeSpan horaDesdeT = horaD.LaHora; TimeSpan horaHastaT = horaH.LaHora; if (Hora.horasValidas(horaDesdeT, horaHastaT)) { unDia.horaDesde = horaDesdeT; unDia.horaHasta = horaHastaT; Especialidad especialidad = (Especialidad)especialidades.SelectedItem; AgendaDiaria diaLaboral = new AgendaDiaria(unDia, especialidad.descripcion, especialidad.codigo); if (noEstaUsado(diaLaboral)) { agendaDeTrabajo.Add(diaLaboral); actualizarLista(); } else { MessageBox.Show("Los horarios seleccionados se sobreponen", "Error!", MessageBoxButtons.OK); } } else { MessageBox.Show("Inserte correctamente las horas", "Error!", MessageBoxButtons.OK); } }
private Boolean noEstaUsado(AgendaDiaria diaLaboral) { foreach (AgendaDiaria diaTrabajo in agendaDeTrabajo) {//los new TimeSpan(0, 1, 0) son para adelantar un minuto y poder verificar si se pisa o no en casos de que la hora sea la misma if (((diaTrabajo.horaDesde <= diaLaboral.horaDesde && diaLaboral.horaDesde.Add(new TimeSpan(0, 1, 0)) <= diaTrabajo.horaHasta) || diaTrabajo.horaDesde <= diaLaboral.horaHasta.Add(new TimeSpan(0, -1, 0)) && diaLaboral.horaHasta <= diaTrabajo.horaHasta) && diaLaboral.dia.id == diaTrabajo.dia.id) { return(false); } } return(true); }
private void confirmar_Click(object sender, EventArgs e) { if (AgendaDiaria.agendaTotalLegal(agendaDeTrabajo)) { if (horarios.RowCount > 0) { confirmar.Visible = false; eliminar.Visible = false; aceptar.Visible = false; rangoFechas.Visible = true; } else { MessageBox.Show("Debe tener al menos 1 dia de trabajo", "Error!", MessageBoxButtons.OK); } } else { MessageBox.Show("La carga horaria supera las 48 horas", "Error!", MessageBoxButtons.OK); } }