Ejemplo n.º 1
0
        private bool val_UpdObject()
        {
            bool result = true;

            if (!Validation.Validation.Val_StringsLength(txtNombre.Text, 5))
            {
                errNombre.SetError(txtNombre, "El nombre debe tener al menos 5 caracteres.");
                valNombre.BackColor = Color.Red;
                result = false;
            }
            else
            {
                errNombre.Clear();
                valNombre.BackColor = Color.FromArgb(0, 100, 182);
                NewObject           = NewObject != null ? NewObject : new Curso();
                NewObject.Nombre    = txtNombre.Text;
            }

            if (dtpDesde.Value > dtpHasta.Value)
            {
                errDesde.SetError(dtpHasta, "La fecha de inicio del curso no puede ser mayor a la fecha de finalización.");
                valDesde.BackColor = Color.Red;
                result             = false;
            }
            else
            {
                errDesde.Clear();
                valDesde.BackColor = Color.FromArgb(0, 100, 182);
                NewObject          = NewObject != null ? NewObject : new Curso();
                NewObject.Desde    = dtpDesde.Value.ToString("yyyy/MM/dd");
            }

            if (!Validation.Validation.Val_StringsLength(txtSeccion.Text, 1))
            {
                errSeccion.SetError(txtSeccion, "La secció debe tener al menos 1 caracter para poder registrarse.");
                valSeccion.BackColor = Color.Red;
                result = false;
            }
            else
            {
                errSeccion.Clear();
                valSeccion.BackColor = Color.FromArgb(0, 100, 182);
                NewObject            = NewObject != null ? NewObject : new Curso();
                NewObject.Seccion    = txtSeccion.Text;
            }

            if (EditingObject == null || (EditingObject != null && EditingObject.Contrato == null))
            {
                errEncargado.SetError(txtEncargado, "No ha seleccionado a ningun docente encargado para este curso.");
                valEncargado.BackColor = Color.Red;
                result = false;
            }
            else
            {
                errEncargado.Clear();
                valEncargado.BackColor = Color.FromArgb(0, 100, 182);
                NewObject          = NewObject != null ? NewObject : new Curso();
                NewObject.Contrato = EditingObject.Contrato;
            }

            if (EditingObject == null || (EditingObject != null && EditingObject.Libros == null || (EditingObject.Libros != null && EditingObject.Libros.Count == 0)))
            {
                errDetCurso.SetError(dgvDeCurso, "No ha seleccionado a ningun libro para este curso.");
                valDetCurso.BackColor = Color.Red;
                result = false;
            }
            else
            {
                errDetCurso.Clear();
                valDetCurso.BackColor = Color.FromArgb(0, 100, 182);
                NewObject             = NewObject != null ? NewObject : new Curso();
                NewObject.Libros      = EditingObject.Libros;
            }

            if (EditingObject == null || (EditingObject != null && EditingObject.Horario == null || (EditingObject.Horario != null && EditingObject.Horario.Count == 0)))
            {
                errHorario.SetError(dgvHorario, "No ha agregado ningun bloque al horario para este curso.");
                valHorario.BackColor = Color.Red;
                result = false;
            }
            else
            {
                errHorario.Clear();
                valHorario.BackColor = Color.FromArgb(0, 100, 182);
                NewObject            = NewObject != null ? NewObject : new Curso();
                NewObject.Horario    = EditingObject.Horario;
            }
            NewObject            = NewObject != null ? NewObject : new Curso();
            NewObject.Id         = CurrentObject.Id;
            NewObject.Publico    = cmbPublico.SelectedItem.ToString();
            NewObject.Hasta      = dtpHasta.Value.ToString("yyyy/MM/dd");
            NewObject.Estado     = chkEstado.Checked ? "A" : "I";
            NewObject.IdSucursal = CurrentObject.IdSucursal;
            NewObject.IdYear     = CurrentObject.IdYear;
            NewObject.Year       = CurrentObject.Year;
            if (result && CurrentObject.Nombre != txtNombre.Text)
            {
                if (CursoDAL.existeCurso(NewObject))
                {
                    errNombre.SetError(txtNombre, "Ya existe un curso con este nombre registrado este año\npor favor elija un nombre diferente.");
                    valNombre.BackColor = Color.Red;
                    result = false;
                }
                else
                {
                    errNombre.Clear();
                    valNombre.BackColor = Color.FromArgb(0, 100, 182);
                }
            }
            NewObject = result ? NewObject : null;
            return(result);
        }