コード例 #1
0
        private void btnRegistrarInasistencia_Click(object sender, EventArgs e)
        {
            //TODO: Asegurarse de que todos los alumnos seleccionados son los ausentes (Para eso está el legajo en el formulario)

            List<Asistencia> listaAsistencias = new List<Asistencia>();

            if (ddlCursos.SelectedIndex > 0)
            {
                KeyValuePair<int, string> idCursoSeleccionado = (KeyValuePair<int, string>)ddlCursos.SelectedItem;
                int var_curso = idCursoSeleccionado.Key;

                Asistencia asistencia = null;

                foreach (EntidadAsistencia entidadAsistencia in listaEntidades)
                {
                    asistencia = new Asistencia();

                    int var_tipo_asistencia = 1;
                    int validadorSeleccionUnica = 0;

                    //Verifico que al menos se haya seleccionado una de las opciones
                    if (entidadAsistencia.presente) validadorSeleccionUnica++;
                    if (entidadAsistencia.tarde) validadorSeleccionUnica++;
                    if (entidadAsistencia.ausente) validadorSeleccionUnica++;

                    //Valido que se haya seleccionado una sola opción únicamente
                    if(validadorSeleccionUnica == 1)
                    {
                        if (entidadAsistencia.tarde) var_tipo_asistencia = 5;
                        if (entidadAsistencia.ausente) var_tipo_asistencia = 3;

                        asistencia.fecha = dtpFecha.Value;

                        asistencia.tipoAsistencia.idTipoAsistenciaTransaccional = var_tipo_asistencia;

                        asistencia.alumno.alumno.idAlumnoTransaccional = entidadAsistencia.legajo;
                        asistencia.alumno.cursoCicloLectivo.curso.idCursoTransaccional = var_curso;

                        asistencia.alumno.idAlumnoCursoCicloLectivoTransaccional = entidadAsistencia.legajo;

                        listaAsistencias.Add(asistencia);
                    }
                }

                //Si cada una de las entidades ha sido seleccionada, procedemos a persistir las asistencias del día, sino no se hace nada.
                if (listaAsistencias.Count == listaEntidades.Count)
                {
                    foreach (Asistencia asistenciaEspecifica in listaAsistencias)
                    {
                        objProcesarDatos.registrarAsistenciaBDTransaccional(cfg, asistenciaEspecifica);
                    }
                }
            } //Fin validador selección de curso
            else MessageBox.Show("No se ha seleccionado un curso");
            LimpiarFormulario();
        }
コード例 #2
0
        /// <summary>
        /// Gets the informe InasistenciasSancionSMS.
        /// </summary>
        /// <param name="idProcesoAutomatico">The id proceso automatico.</param>
        /// <returns></returns>
        public List<Asistencia> GetInformeInasistenciasSMS(int idProcesoAutomatico)
        {
            var listaAsistencia = new List<Asistencia>();
            try
            {
                using (SqlCommand command = new SqlCommand())
                {
                    sqlConnectionConfig.Open();

                    command.Connection = sqlConnectionConfig;
                    command.CommandType = System.Data.CommandType.StoredProcedure;
                    command.CommandText = "AsistenciaInformeSMS_Select";
                    //command.CommandText = "AsistenciaInformeMail_Select"; // Como no hay cargadas inasistencias en la ultima semana
                    command.CommandTimeout = 10;

                    command.Parameters.AddWithValue("@idProcesoAutomatico", idProcesoAutomatico);

                    SqlDataReader reader = command.ExecuteReader();
                    Asistencia objAsistencia = null;
                    while (reader.Read())
                    {
                        objAsistencia = new Asistencia();
                        objAsistencia.fecha = Convert.ToDateTime(reader["fecha"]);
                        objAsistencia.alumno.alumno.nombre = reader["nombreAlumno"].ToString();
                        objAsistencia.alumno.alumno.apellido = reader["apellidoAlumno"].ToString();
                        objAsistencia.alumno.alumno.idPersona = Convert.ToInt32(reader["idPersonaAlumno"]);

                        objAsistencia.alumno.alumno.listaTutores.Add(new Tutor
                        {
                            nombre = reader["nombreTutor"].ToString(),
                            apellido = reader["apellidoTutor"].ToString(),
                            telefonoCelular = reader["telefonoCelular"].ToString(),
                            idPersona = Convert.ToInt32(reader["idPersonaTutor"])
                        });
                        objAsistencia.tipoAsistencia.descripcion = reader["descripcion"].ToString();

                        listaAsistencia.Add(objAsistencia);
                    }
                    sqlConnectionConfig.Close();
                    return listaAsistencia;
                }
            }
            catch (SqlException ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - GetInformeInasistencias()", ClassName),
                                    ex, enuExceptionType.SqlException);
            }
            catch (Exception ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - GetInformeInasistencias()", ClassName),
                                    ex, enuExceptionType.DataAccesException);
            }
        }
コード例 #3
0
ファイル: DAObtenerDatos.cs プロジェクト: martinherr3/blpm
        /// <summary>
        /// Obteners the asistencia BD transaccional.
        /// </summary>
        /// <param name="configuracion">The configuracion.</param>
        /// <returns></returns>
        public List<Asistencia> obtenerAsistenciaBDTransaccional(Configuraciones configuracion)
        {
            //obtenerAsistenciaBDTransaccional
            List<Asistencia> listadoAsistencia = null;
            try
            {
                using (MySqlCommand command = new MySqlCommand())
                {
                    conMySQL = new MySqlConnection(configuracion.valor);
                    command.Connection = conMySQL;

                    command.CommandText = @"SELECT
                                                 id
                                                ,fk_alumnocursociclolectivo_id
                                                ,fk_tipoasistencia_id
                                                ,fecha
                                            FROM asistencia
                                            WHERE fk_tipoasistencia_id<>1";
                    conMySQL.Open();

                    MySqlDataReader reader = command.ExecuteReader();
                    Asistencia unaAsistencia;
                    listadoAsistencia = new List<Asistencia>();
                    while (reader.Read())
                    {
                        unaAsistencia = new Asistencia();

                        unaAsistencia.idAsistencia = 0;
                        unaAsistencia.idAsistenciaTransaccional = (int)reader["id"];
                        unaAsistencia.fecha = Convert.ToDateTime(reader["fecha"]);
                        unaAsistencia.tipoAsistencia = new TipoAsistencia();
                        unaAsistencia.tipoAsistencia.idTipoAsistenciaTransaccional = (int)reader["fk_tipoasistencia_id"];
                        unaAsistencia.alumno.idAlumnoCursoCicloLectivoTransaccional = (int)reader["fk_alumnocursociclolectivo_id"];

                        listadoAsistencia.Add(unaAsistencia);
                    }
                    command.Connection.Close();
                    return listadoAsistencia;
                }
            }
            catch (MySqlException ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - obtenerAsistenciaBDTransaccional()", ClassName),
                                        ex, enuExceptionType.MySQLException);
            }
            catch (SqlException ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - obtenerAsistenciaBDTransaccional()", ClassName),
                                    ex, enuExceptionType.SqlException);
            }
            catch (Exception ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - obtenerAsistenciaBDTransaccional()", ClassName),
                                    ex, enuExceptionType.DataAccesException);
            }
            finally
            {
                //if (sqlConnectionConfig.State == ConnectionState.Open)
                //    sqlConnectionConfig.Close();
            }
        }
コード例 #4
0
ファイル: BLProcesarDatos.cs プロジェクト: martinherr3/blpm
        public void registrarAsistenciaBDTransaccional(Configuraciones configuracion, Asistencia unaAsistencia)
        {
            try
            {
                objDAStoreDatos = new DAStoreDatos(configuracion.valor);

                objDAStoreDatos.registrarAsistenciaBDTransaccional(configuracion, unaAsistencia);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #5
0
ファイル: DAStoreDatos.cs プロジェクト: martinherr3/blpm
        /// <summary>
        /// Registra una asistencia en la BD transaccional.
        /// </summary>
        /// <param name="configuracion">The configuracion.</param>
        /// <returns></returns>
        public void registrarAsistenciaBDTransaccional(Configuraciones configuracion, Asistencia unaAsistencia)
        {
            try
            {
                using (MySqlConnection conn = new MySqlConnection(configuracion.valor))
                {
                    MySqlCommand command = new MySqlCommand("sp_store_inasistencia;", conn);
                    command.CommandType = System.Data.CommandType.StoredProcedure;

                    // Add your parameters here if you need them
                    command.Parameters.Add(new MySqlParameter("var_curso", unaAsistencia.alumno.cursoCicloLectivo.curso.idCursoTransaccional));
                    command.Parameters.Add(new MySqlParameter("var_alumno", unaAsistencia.alumno.alumno.idAlumnoTransaccional));
                    command.Parameters.Add(new MySqlParameter("var_tipo_asistencia", unaAsistencia.tipoAsistencia.idTipoAsistenciaTransaccional));
                    command.Parameters.Add(new MySqlParameter("var_fecha", unaAsistencia.fecha));

                    conn.Open();

                    command.ExecuteNonQuery();

                    //int result = (int)command.ExecuteScalar();
                }
            }
            catch (MySqlException ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - registrarSancionBDTransaccional()", ClassName),
                                        ex, enuExceptionType.MySQLException);
            }
            catch (SqlException ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - registrarSancionBDTransaccional()", ClassName),
                                    ex, enuExceptionType.SqlException);
            }
            catch (Exception ex)
            {
                throw new CustomizedException(String.Format("Fallo en {0} - registrarSancionBDTransaccional()", ClassName),
                                    ex, enuExceptionType.DataAccesException);
            }
            finally
            {
                //if (sqlConnectionConfig.State == ConnectionState.Open)
                //    sqlConnectionConfig.Close();
            }
        }