private void cargarGrilla() { ComisionService s = new ComisionService(); try { Comisiones = s.GetAll(); if (txtBuscar.Text != "") { txtBuscar.Text = ""; } dgvGrilla.DataSource = Comisiones.FindAll(x => x.Deshabilitado == false || chbDeshabilitados.Checked) .OrderByDescending(x => x.Año) .ThenBy(x => x.Cuatrimestre) .ThenBy(x => x.Turno.Id) .ThenBy(x => x.Materia.Nombre).ToList(); dgvGrilla.Columns["Id"].HeaderText = "Código"; dgvGrilla.Columns["Deshabilitado"].Visible = chbDeshabilitados.Checked; } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void validarEntidad() { string errores = ""; if (cmbMateria.SelectedItem == null) { errores += "Debe seleccionar una materia. " + Environment.NewLine; } if (cmbCuatrimestre.SelectedItem == null && cmbCuatrimestre.Enabled) { errores += "Debe seleccionar un cuatrimestre. " + Environment.NewLine; } if (cmbTurno.SelectedItem == null) { errores += "Debe seleccionar un turno. " + Environment.NewLine; } if (cmbModalidad.SelectedItem == null) { errores += "Debe seleccionar una modalidad. " + Environment.NewLine; } if (cmbProfesor.SelectedItem == null) { errores += "Debe seleccionar un profesor. " + Environment.NewLine; } if (errores != "") { throw new WarningException(errores); } if (comision == null) { comision = new Comision(); } comision.Materia = (Materia)cmbMateria.SelectedItem; comision.Año = dtpAño.Value.Year; comision.Cuatrimestre = (byte?)(cmbCuatrimestre.SelectedItem ?? null); comision.Turno = (Turno)cmbTurno.SelectedItem; comision.Modalidad = (Modalidad)cmbModalidad.SelectedItem; comision.Profesor = (Profesor)cmbProfesor.SelectedItem; comision.Ayudante = (Profesor)cmbAyudante.SelectedItem ?? null; if (comision.Ayudante != null && comision.Ayudante.Id == 0) { comision.Ayudante = null; } if (comision.Ayudante != null && comision.Ayudante.Id == comision.Profesor.Id) { throw new WarningException("No puede asignar el profesor como ayudante a la vez."); } ComisionService s = new ComisionService(); var comisiones = s.GetAll().FindAll(x => x.Deshabilitado == false); foreach (var Comision in comisiones) { if (Comision.Id != comision.Id) { if (Comision.Materia.Id == comision.Materia.Id && Comision.Año == comision.Año && Comision.Cuatrimestre == comision.Cuatrimestre && Comision.Turno.Id == comision.Turno.Id) { throw new WarningException("Ya existe una comisión para la materia " + Comision.Materia + ", año " + Comision.Año + (Comision.Cuatrimestre == null ? "" : ", cuatrimestre " + Comision.Cuatrimestre) + " y turno " + Comision.Turno + "."); } } } }