//metodo para guardar el horario de los cursos
        public int guardarHorario(HorarioCurso horario)
        {
            try
            {
                if (horario != null)
                {
                    this.abrirConexion();
                    this.comando             = new SqlCommand();
                    this.comando.Connection  = this.cnx;
                    this.comando.CommandType = CommandType.StoredProcedure;
                    this.comando.CommandText = "[PA_Ins_Horario]";

                    this.comando.Parameters.AddWithValue("@IDCurso", horario.IDCurso);
                    this.comando.Parameters.AddWithValue("@dia", horario.dia);
                    this.comando.Parameters.AddWithValue("@horaInicio", horario.horaInicio);
                    this.comando.Parameters.AddWithValue("@horaFin", horario.horaFin);

                    this.comando.ExecuteNonQuery();
                    this.cerrarConexion();
                    this.comando.Dispose();

                    return(1);
                }
                else
                {
                    return(0);
                }
            }
            catch (Exception ex)
            {
                new Exception("Error de transacción", ex);
                return(0);
            }
        }
Esempio n. 2
0
        public override object DoLoad(System.Data.IDataReader registers)
        {
            HorarioCurso horCurso = new HorarioCurso();

            horCurso.Materia = registers["materia"].ToString();

            return(horCurso);
        }
Esempio n. 3
0
        public void guardarHorario()
        {
            try
            {
                horario = new HorarioCurso();

                //evaluaciones de que los campos se encuentren en un estado válido para la base de datos
                if (string.IsNullOrEmpty(this.txtIDCurso.Text))
                {
                    MessageBox.Show("Debe ingresar un ID del curso", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else if (string.IsNullOrEmpty(this.txtDia.Text))
                {
                    MessageBox.Show("Debe ingresar un día de la semana para el horario", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else if (string.IsNullOrEmpty(this.txtHoraInicio.Text))
                {
                    MessageBox.Show("Debe ingresar una hora de inicio para las sesiones", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else if (string.IsNullOrEmpty(this.txtHoraFin.Text))
                {
                    MessageBox.Show("Debe ingresar una hora de final para las sesiones", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {
                    this.horario.horaInicio = int.Parse(this.txtHoraInicio.Text.Trim());
                    this.horario.IDCurso    = this.txtIDCurso.Text.Trim();
                    this.horario.dia        = this.txtDia.Text.Trim();
                    this.horario.horaFin    = int.Parse(this.txtHoraFin.Text.Trim());
                }

                try
                {
                    //comprobacion de que la hora de entrada siempre sea menor a la hora de salida
                    if (int.Parse(this.txtHoraFin.Text.Trim()) < int.Parse(this.txtHoraInicio.Text.Trim()))
                    {
                        MessageBox.Show("La hora de salida tiene que ser mayor que la hora de entrada", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        if (this.horario.comprobacionHorario(int.Parse(this.txtHoraInicio.Text.Trim()), int.Parse(this.txtHoraFin.Text.Trim())) == 0)
                        {
                            MessageBox.Show("Debe ingresar valores que estén en el intervalo de 0 a 24 horas", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                        else
                        {
                            if (MessageBox.Show("¿Está seguro de que quiere agregar el horario indicado para este curso? No podrá hacerle cambios después", "Confirmar acción", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                            {
                                //control de transaccion
                                using (TransactionScope scope = new TransactionScope())
                                {
                                    if (this.conexion.guardarHorario(horario) == 1)
                                    {
                                        MessageBox.Show("Horario almacenado con éxito", "Proceso Aplicado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                        scope.Complete();
                                    }
                                    else
                                    {
                                        MessageBox.Show("La transacción falló por un problema interno o porque repitió un mismo día de horario", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    }
                                } //fin de transaccion
                            }     //fin de confirmacion
                        }
                    }             //fin de comprobacion de que la hora fin sea mayor que la hora inicio
                }
                catch (Exception ex)
                {
                    new Exception("Error", ex);
                    MessageBox.Show("Debe ingresar los en los datos campos de texto para poder hacer operaciones", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (TransactionAbortedException ex)
            {
                throw new TransactionAbortedException(String.Format("No se pudo completar la transacción"), ex);
            }
        }
Esempio n. 4
0
 public ResponsePreMatricula PreMatricular(CursosPreMatricula Cursos)
 {
     try
     {
         List <HorarioCurso> listadoCursos = new List <HorarioCurso>();
         //Optenemos el Horario de lso cursos de Laboratorio
         foreach (var cod in Cursos.cod_cuso)
         {
             Curso        cod_curso = new Curso();
             HorarioCurso resul     = new HorarioCurso();
             cod_curso.cod_curso = cod;
             resul = new DataAccess().ExecuteSqlProcedureSingle <HorarioCurso, Curso>("OBTENER_HORA_DIA_CURSO", cod_curso);
             if (resul.tipo_clase == "L")
             {
                 listadoCursos.Add(resul);
             }
         }
         //Validamos quen  exista cruse en Laboratorio
         foreach (var fila in listadoCursos)
         {
             foreach (var fila_v in listadoCursos)
             {
                 if (fila.dia_clase == fila_v.dia_clase)
                 {
                     if (Convert.ToInt32(fila.hora_inicio) >= Convert.ToInt32(fila_v.hora_inicio) && Convert.ToInt32(fila.hora_inicio) <= Convert.ToInt32(fila_v.hora_fin))
                     {
                         var response = new ResponsePreMatricula()
                         {
                             respuesta         = false,
                             RespuestaServicio = null
                         };
                         return(response);
                     }
                     if (Convert.ToInt32(fila.hora_fin) > Convert.ToInt32(fila_v.hora_inicio) && Convert.ToInt32(fila.hora_fin) <= Convert.ToInt32(fila_v.hora_fin))
                     {
                         var response = new ResponsePreMatricula()
                         {
                             respuesta         = false,
                             RespuestaServicio = null
                         };
                         return(response);
                     }
                 }
             }
         }
         ;
         //Aqui se Ralisa la  Pre Matricula si no hay cruses
         foreach (var cod in Cursos.cod_cuso)
         {
             var resul = new DataAccess().ExecuteSqlProcedureSingle <HorarioCurso, MatriculaCurso>("OBTENER_HORA_DIA_CURSO", new MatriculaCurso
             {
                 cod_alumno = Cursos.cod_alumno,
                 cod_curso  = cod
             });
         }
         var response_v = new ResponsePreMatricula()
         {
             respuesta         = true,
             RespuestaServicio = null
         };
         return(response_v);
     }
     catch (Exception ex)
     {
         var response = new ResponsePreMatricula()
         {
             respuesta         = false,
             RespuestaServicio =
             {
                 Error          = true,
                 MensajeError   = ex.Message,
                 CodigoError    = ex.HResult,
                 MensajeDetalle = ex.Source
             }
         };
         return(response);
     }
 }