Пример #1
0
        //Alumnos
        /// <summary>
        /// este metodo cubre la falta del modulo de notas, no esta registrado porque, si
        /// estuviese todo el sistema junto, este metodo no existiria.
        /// </summary>
        /// <param name="alumno"></param>
        public void generarPlanillasDeEvaluacion(Alumno alumno)
        {
            Nivel nivel = alumno.curso.nivel;

            List <Materia> materias = this.traerMateriasPorNivel(nivel);

            if (materias.Count > 0)
            {
                StringBuilder sb = new StringBuilder();

                SqlConnection connection = ConexionSingleton.obtenerConexion();
                connection.Open();
                SqlTransaction tx = connection.BeginTransaction();

                SqlCommand cmd  = new SqlCommand("", connection, tx);
                Random     rand = new Random();
                int        iter = 0;
                cmd.Parameters.Add(new SqlParameter("@nivel", SqlDbType.BigInt)).Value  = nivel.id;
                cmd.Parameters.Add(new SqlParameter("@alumno", SqlDbType.BigInt)).Value = alumno.legajo;
                foreach (Materia materia in materias)
                {
                    iter++;
                    sb.Append(" insert into planilla_de_evaluacion " +
                              "(pde_alumno_id,pde_nivel_id,pde_trimestre_1,pde_trimestre_2,pde_trimestre_3,pde_nota_final,pde_condicion,pde_dvh,pde_materia_id) ");
                    sb.Append(" values(@alumno,@nivel, ");
                    int    tri1      = rand.Next(1, 10);
                    int    tri2      = rand.Next(1, 10);
                    int    tri3      = rand.Next(1, 10);
                    Double promedio  = (tri1 + tri2 + tri3) / 3;
                    int    condicion = promedio >= 7 ? 1 : 0;
                    sb.Append("@tri1" + iter + ", " + "@tri2" + iter + ", " + "@tri3" + iter + ", " + "@promedio" + iter + ", " + "@condicion" + iter + ", ");
                    sb.Append(" @dvh" + iter + " , @materia" + iter + ")");
                    String trim1 = SeguridadUtiles.encriptarAES(tri1.ToString());
                    String trim2 = SeguridadUtiles.encriptarAES(tri2.ToString());
                    String trim3 = SeguridadUtiles.encriptarAES(tri3.ToString());
                    cmd.Parameters.Add(new SqlParameter("@tri1" + iter, SqlDbType.NVarChar)).Value     = trim1;
                    cmd.Parameters.Add(new SqlParameter("@tri2" + iter, SqlDbType.NVarChar)).Value     = trim2;
                    cmd.Parameters.Add(new SqlParameter("@tri3" + iter, SqlDbType.NVarChar)).Value     = trim3;
                    cmd.Parameters.Add(new SqlParameter("@promedio" + iter, SqlDbType.NVarChar)).Value = SeguridadUtiles.encriptarAES(promedio.ToString());
                    cmd.Parameters.Add(new SqlParameter("@condicion" + iter, SqlDbType.BigInt)).Value  = condicion;
                    cmd.Parameters.Add(new SqlParameter("@dvh" + iter, SqlDbType.NVarChar)).Value      = new DAOSeguridad().recalcularDigitoHorizontal(new String[] { trim1, trim2, trim3, alumno.legajo.ToString() });
                    cmd.Parameters.Add(new SqlParameter("@materia" + iter, SqlDbType.BigInt)).Value    = materia.id;
                }
                cmd.CommandText = sb.ToString();

                try
                {
                    cmd.ExecuteNonQuery();
                    tx.Commit();
                    connection.Close();
                    new DAOSeguridad().recalcularDigitoVertical("PLANILLA_DE_EVALUACION");
                }
                catch (Exception ex)
                {
                    tx.Rollback();
                    connection.Close();
                    throw;
                }
            }
        }
Пример #2
0
        //amonestaciones
        public void guardarAmonestacion(Amonestacion amonestacion)
        {
            SqlConnection connection = ConexionSingleton.obtenerConexion();

            connection.Open();
            SqlTransaction tx = connection.BeginTransaction();

            StringBuilder sb = new StringBuilder();

            sb.Append(" insert into amonestacion ");
            sb.Append(" (amon_alumno_id,amon_fecha,amon_motivo,amon_dvh) ");
            sb.Append(" values(@alu,@fecha,@motivo,@dvh) ");

            String dvh = new DAOSeguridad().recalcularDigitoHorizontal(new String[] { amonestacion.alumno.legajo.ToString(),
                                                                                      amonestacion.fecha.ToString("yyyy-MM-dd") });

            SqlCommand cmd = new SqlCommand(sb.ToString(), connection, tx);

            cmd.Parameters.Add(new SqlParameter("@alu", SqlDbType.BigInt)).Value  = amonestacion.alumno.legajo;
            cmd.Parameters.Add(new SqlParameter("@fecha", SqlDbType.Date)).Value  = amonestacion.fecha;
            cmd.Parameters.Add(new SqlParameter("@motivo", SqlDbType.Text)).Value = SeguridadUtiles.encriptarAES(amonestacion.motivo);
            cmd.Parameters.Add(new SqlParameter("@dvh", SqlDbType.VarChar)).Value = dvh;


            try
            {
                String check = " Select count(*) from amonestacion where amon_alumno_id = @alu and amon_fecha = @fecha";
                cmd.CommandText = check;
                SqlDataReader reader = cmd.ExecuteReader();

                while (reader.Read())
                {
                    int count = (int)reader.GetValue(0);
                    if (count > 0)
                    {
                        reader.Close();
                        throw new Exception("FECHA");
                    }
                }
                reader.Close();
                cmd.CommandText = sb.ToString();
                cmd.ExecuteNonQuery();
                tx.Commit();
                connection.Close();
                Usuario usu = new Usuario();
                usu.id = TrabajoDeCampo.Properties.Settings.Default.SessionUser;
                new DAOSeguridad().grabarBitacora(usu, "Se registro una amonestación", CriticidadEnum.MEDIA);
            }
            catch (Exception)
            {
                tx.Rollback();
                connection.Close();
                throw;
            }
        }
Пример #3
0
        public void modificarTutor(Tutor tutor)
        {
            SqlConnection connection = ConexionSingleton.obtenerConexion();

            connection.Open();
            SqlTransaction tx = connection.BeginTransaction();

            SqlCommand cmd = new SqlCommand("", connection, tx);

            StringBuilder query = new StringBuilder(" UPDATE TUTOR SET " +
                                                    "TUT_NOMBRE = @NOMBRE," +
                                                    "TUT_APELLIDO = @APELLIDO, " +
                                                    "TUT_TELEFONO_PRIMARIO = @TEL1, " +
                                                    "TUT_DNI = @DNI, " +
                                                    "TUT_EMAIL = @MAIL ");

            if (!String.IsNullOrEmpty(tutor.telefono2))
            {
                query.Append(", TUT_TELEFONO_SECUNDARIO = @TEL2 ");
                cmd.Parameters.Add(new SqlParameter("@TEL2", SqlDbType.NVarChar)).Value = SeguridadUtiles.encriptarAES(tutor.telefono2);
            }

            query.Append(" WHERE TUT_ID = @ID ");
            cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.BigInt)).Value        = tutor.id;
            cmd.Parameters.Add(new SqlParameter("@NOMBRE", SqlDbType.VarChar)).Value   = tutor.nombre;
            cmd.Parameters.Add(new SqlParameter("@APELLIDO", SqlDbType.VarChar)).Value = tutor.apellido;
            cmd.Parameters.Add(new SqlParameter("@TEL1", SqlDbType.NVarChar)).Value    = SeguridadUtiles.encriptarAES(tutor.telefono1);
            cmd.Parameters.Add(new SqlParameter("@DNI", SqlDbType.VarChar)).Value      = tutor.dni;
            cmd.Parameters.Add(new SqlParameter("@MAIL", SqlDbType.VarChar)).Value     = tutor.email;
            cmd.CommandText = query.ToString();

            try
            {
                cmd.ExecuteNonQuery();
                tx.Commit();
                connection.Close();
                Usuario usu = new Usuario();
                usu.id = TrabajoDeCampo.Properties.Settings.Default.SessionUser;
                new DAOSeguridad().grabarBitacora(usu, "Se modificó un tutor", CriticidadEnum.BAJA);
            }
            catch (Exception ex)
            {
                tx.Rollback();
                connection.Close();
                throw ex;
            }
        }
Пример #4
0
        public void actualizarAlumno(Alumno alumno)
        {
            SqlConnection connection = ConexionSingleton.obtenerConexion();

            String deleteQuery = " delete from alumno_tutor where at_alumno_id = @id ";

            StringBuilder sb = new StringBuilder();

            sb.Append(" update alumno set " +
                      "alu_apellido           = @apellido," +
                      "alu_nombre             = @nombre," +
                      "alu_fecha_nacimiento   = @fecha," +
                      "alu_dni                = @dni," +
                      "alu_curso              = @curso," +
                      "alu_domicilio          = @domicilio," +
                      "alu_orientacion        = @orientacion ");

            sb.Append(" where alu_legajo = @id ");
            connection.Open();
            SqlTransaction tx  = connection.BeginTransaction();
            SqlCommand     cmd = new SqlCommand("", connection, tx);

            cmd.Parameters.Add(new SqlParameter("@apellido", SqlDbType.VarChar)).Value    = alumno.apellido;
            cmd.Parameters.Add(new SqlParameter("@nombre", SqlDbType.VarChar)).Value      = alumno.nombre;
            cmd.Parameters.Add(new SqlParameter("@fecha", SqlDbType.DateTime)).Value      = alumno.fechaNacimiento;
            cmd.Parameters.Add(new SqlParameter("@dni", SqlDbType.VarChar)).Value         = alumno.dni;
            cmd.Parameters.Add(new SqlParameter("@curso", SqlDbType.BigInt)).Value        = alumno.curso.id;
            cmd.Parameters.Add(new SqlParameter("@domicilio", SqlDbType.VarChar)).Value   = SeguridadUtiles.encriptarAES(alumno.domicilio);
            cmd.Parameters.Add(new SqlParameter("@orientacion", SqlDbType.VarChar)).Value = alumno.orientacion != null ? alumno.orientacion.codigo : Convert.DBNull;
            cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.VarChar)).Value          = alumno.legajo;
            cmd.CommandText = sb.ToString();

            try
            {
                cmd.ExecuteNonQuery();
                cmd.CommandText = deleteQuery;
                cmd.ExecuteNonQuery();

                sb.Clear();
                int cantidad = 0;
                foreach (Tutor tutor in alumno.tutores)
                {
                    cantidad++;
                    cmd.Parameters.Add(new SqlParameter("@tut" + cantidad, SqlDbType.BigInt)).Value = tutor.id;
                    sb.Append(" insert into alumno_tutor (at_alumno_id,at_tutor_id) values (@id,@tut" + cantidad + ") ");
                }
                cmd.CommandText = sb.ToString();
                if (sb.ToString().Length > 0)
                {
                    cmd.ExecuteNonQuery();
                }
                tx.Commit();
                connection.Close();
                Usuario usu = new Usuario();
                usu.id = TrabajoDeCampo.Properties.Settings.Default.SessionUser;
                new DAOSeguridad().grabarBitacora(usu, "Se modificó un alumno", CriticidadEnum.MEDIA);
            }
            catch (Exception ex)
            {
                tx.Rollback();
                connection.Close();
                throw;
            }
        }
Пример #5
0
        //alumnos
        public void guardarAlumno(Alumno alumno)
        {
            SqlConnection connection = ConexionSingleton.obtenerConexion();

            StringBuilder sb = new StringBuilder();

            sb.Append(" insert into alumno (alu_apellido,alu_nombre,alu_fecha_nacimiento,alu_dni,alu_curso,alu_domicilio ");
            if (alumno.orientacion != null)
            {
                sb.Append(" ,alu_orientacion");
            }
            sb.Append(" ) ");
            sb.Append(" OUTPUT Inserted.alu_legajo values( ");
            sb.Append(" @apellido, ");
            sb.Append(" @nombre, ");
            sb.Append(" @fecha, ");
            sb.Append(" @dni, ");
            sb.Append(" @curso, ");
            sb.Append(" @domicilio ");
            if (alumno.orientacion != null)
            {
                sb.Append(" ,@orientacion");
            }
            sb.Append(" ) ");

            connection.Open();
            SqlTransaction tx  = connection.BeginTransaction();
            SqlCommand     cmd = new SqlCommand("", connection, tx);

            cmd.Parameters.Add(new SqlParameter("@apellido", SqlDbType.VarChar)).Value  = alumno.apellido;
            cmd.Parameters.Add(new SqlParameter("@nombre", SqlDbType.VarChar)).Value    = alumno.nombre;
            cmd.Parameters.Add(new SqlParameter("@fecha", SqlDbType.DateTime)).Value    = alumno.fechaNacimiento;
            cmd.Parameters.Add(new SqlParameter("@dni", SqlDbType.VarChar)).Value       = alumno.dni;
            cmd.Parameters.Add(new SqlParameter("@curso", SqlDbType.BigInt)).Value      = alumno.curso.id;
            cmd.Parameters.Add(new SqlParameter("@domicilio", SqlDbType.VarChar)).Value = SeguridadUtiles.encriptarAES(alumno.domicilio);
            if (alumno.orientacion != null)
            {
                cmd.Parameters.Add(new SqlParameter("@orientacion", SqlDbType.VarChar)).Value = alumno.orientacion.codigo;
            }

            cmd.CommandText = sb.ToString();
            SqlDataReader reader = null;

            try
            {
                reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    alumno.legajo = (long)reader.GetValue(0);
                }
                reader.Close();



                sb.Clear();
                int cantidad = 0;
                foreach (Tutor tutor in alumno.tutores)
                {
                    cantidad++;
                    cmd.Parameters.Add(new SqlParameter("@tut" + cantidad, SqlDbType.BigInt)).Value = tutor.id;
                    sb.Append(" insert into alumno_tutor (at_alumno_id,at_tutor_id) values (@alumno,@tut" + cantidad + ") ");
                }

                cmd.Parameters.Add(new SqlParameter("@alumno", SqlDbType.BigInt)).Value = alumno.legajo;

                cmd.CommandText = sb.ToString();
                cmd.ExecuteNonQuery();
                tx.Commit();
                connection.Close();
                Usuario usu = new Usuario();
                usu.id = TrabajoDeCampo.Properties.Settings.Default.SessionUser;
                new DAOSeguridad().grabarBitacora(usu, "Se creó alumno", CriticidadEnum.MEDIA);
                new DAOAdministracion().generarPlanillasDeEvaluacion(alumno);
            }
            catch (Exception ex)
            {
                tx.Rollback();
                connection.Close();
                throw;
            }
        }