public List <Amonestacion> listarAmonestaciones(String filtro, String valor, String orden) { SqlDataReader reader = null; SqlConnection connection = ConexionSingleton.obtenerConexion(); List <Amonestacion> amonestaciones = new List <Amonestacion>(); connection.Open(); SqlTransaction tx = connection.BeginTransaction(); SqlCommand cmd = new SqlCommand("SELECT * FROM AMONESTACION WHERE AMON_ALUMNO_ID = @ID ", connection, tx); cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.BigInt)).Value = long.Parse(valor); try { reader = cmd.ExecuteReader(); while (reader.Read()) { Amonestacion amonestacion = new Amonestacion(); amonestacion.fecha = DateTime.Parse(reader.GetValue(1).ToString()); amonestacion.motivo = SeguridadUtiles.desencriptarAES(reader.GetValue(2).ToString()); amonestaciones.Add(amonestacion); } reader.Close(); tx.Commit(); connection.Close(); new DAOSeguridad().recalcularDigitoVertical("AMONESTACION"); } catch (Exception) { if (reader != null) { reader.Close(); } tx.Rollback(); connection.Close(); throw; } return(amonestaciones); }
public List <Tutor> listarTutor(String filtro, String valor, String orden) { SqlConnection connection = ConexionSingleton.obtenerConexion(); connection.Open(); SqlTransaction tx = connection.BeginTransaction(); List <Tutor> tutores = new List <Tutor>(); StringBuilder query = new StringBuilder(" select * from TUTOR "); if (!String.IsNullOrEmpty(filtro) && !String.IsNullOrEmpty(valor)) { // nombre apellido dni switch (filtro) { case "nombre": query.Append("WHERE TUT_NOMBRE = @VALOR "); break; case "apellido": query.Append(" WHERE TUT_APELLIDO = @VALOR "); break; case "dni": query.Append(" WHERE TUT_DNI = @VALOR "); break; } } SqlCommand cmd = new SqlCommand(query.ToString(), connection, tx); SqlDataReader reader = null; if (!String.IsNullOrEmpty(valor)) { cmd.Parameters.Add(new SqlParameter("@VALOR", SqlDbType.VarChar)).Value = valor; } try { reader = cmd.ExecuteReader(); while (reader.Read()) { Tutor tut = new Tutor(); tut.id = (long)reader.GetValue(0); tut.nombre = reader.GetValue(1).ToString(); tut.apellido = reader.GetValue(2).ToString(); tut.telefono1 = SeguridadUtiles.desencriptarAES(reader.GetValue(3).ToString()); if (reader.IsDBNull(4)) { tut.telefono2 = ""; } else { tut.telefono2 = SeguridadUtiles.desencriptarAES(reader.GetValue(4).ToString()); } tut.dni = reader.GetValue(5).ToString(); tut.email = reader.GetValue(6).ToString(); tutores.Add(tut); } reader.Close(); tx.Commit(); connection.Close(); } catch (Exception ex) { reader.Close(); tx.Rollback(); connection.Close(); throw ex; } return(tutores); }
public List <Alumno> listarAlumno(String filtro, String valor, String orden) { List <Alumno> alumnos = new List <Alumno>(); SqlConnection connection = ConexionSingleton.obtenerConexion(); DateTime principioDeAño = new DateTime(DateTime.Now.Year, 1, 1); DateTime finDeAño = new DateTime(DateTime.Now.Year, 12, 31); String queryInasistencias = " (select SUM(INA_VALOR) as inasistencias from inasistencia_de_alumno where ina_alumno_id = alu.alu_legajo and " + "ina_justificada <> 1 and ina_fecha between @princio and @fin " + "group by ina_alumno_id) , "; StringBuilder sb = new StringBuilder(); sb.Append(" select alu.alu_legajo, alu.alu_apellido, alu.alu_nombre, alu.alu_fecha_nacimiento, alu.alu_dni, alu.alu_curso, " + " alu.alu_domicilio, alu.alu_orientacion, " + " ori.ori_codigo, cur.cur_codigo , cur.cur_id, cur.cur_nivel_id, nivel.niv_codigo,ORI.ORI_NOMBRE, " + queryInasistencias + " (select count(*) from planilla_de_evaluacion where pde_alumno_id = alu.alu_legajo and pde_condicion = 0) as desaprobadas "); sb.Append(" from alumno alu "); sb.Append(" left join orientacion ori on ori.ori_codigo = alu.alu_orientacion "); sb.Append(" inner join curso cur on cur.cur_id = alu.alu_curso "); sb.Append(" inner join nivel nivel on cur.cur_nivel_id = nivel.niv_id"); sb.Append(" where alu.alu_borrado is null "); if (!String.IsNullOrEmpty(filtro) && !String.IsNullOrEmpty(valor)) { switch (filtro) { case "nombre": sb.Append(" and alu.alu_nombre = @valor "); break; case "apellido": sb.Append(" and alu.alu_apellido = @valor "); break; case "dni": sb.Append(" and alu.alu_dni = @valor "); break; case "curso": sb.Append(" and cur.cur_codigo = @valor "); break; } } connection.Open(); SqlTransaction tx = connection.BeginTransaction(); SqlCommand cmd = new SqlCommand(sb.ToString(), connection, tx); cmd.Parameters.Add(new SqlParameter("@princio", SqlDbType.Date)).Value = principioDeAño; cmd.Parameters.Add(new SqlParameter("@fin", SqlDbType.Date)).Value = finDeAño; if (!String.IsNullOrEmpty(filtro) && !String.IsNullOrEmpty(valor)) { cmd.Parameters.Add(new SqlParameter("@valor", SqlDbType.VarChar)).Value = valor; } SqlDataReader reader = null; try { reader = cmd.ExecuteReader(); while (reader.Read()) { Alumno alu = new Alumno(); Orientacion ori = new Orientacion(); Curso cur = new Curso(); alu.legajo = (long)reader["ALU_LEGAJO"]; alu.apellido = reader["ALU_APELLIDO"].ToString(); alu.nombre = reader["ALU_NOMBRE"].ToString(); alu.fechaNacimiento = DateTime.Parse(reader["ALU_FECHA_NACIMIENTO"].ToString()); alu.dni = reader["ALU_DNI"].ToString(); cur.id = (long)reader["CUR_ID"]; cur.codigo = reader["CUR_CODIGO"].ToString(); cur.nivel = new Nivel(); cur.nivel.id = (long)reader["CUR_NIVEL_ID"]; cur.nivel.codigo = reader["NIV_CODIGO"].ToString(); alu.curso = cur; alu.domicilio = SeguridadUtiles.desencriptarAES(reader["ALU_DOMICILIO"].ToString()); decimal faltas = reader.IsDBNull(14) ? 0 : (decimal)reader[14]; alu.puedeRepetir = (1 < faltas) || 2 < (int)reader["desaprobadas"]; if (reader.IsDBNull(8)) { ori.codigo = "null"; } else { ori.codigo = reader["ORI_CODIGO"].ToString(); ori.nombre = reader["ORI_NOMBRE"].ToString(); } alu.orientacion = ori; alumnos.Add(alu); } reader.Close(); String tutoresQuery = " select tut_id from alumno_tutor inner join tutor on at_tutor_id = tut_id where at_alumno_id = @id "; cmd.CommandText = tutoresQuery; foreach (Alumno alu in alumnos) { cmd.Parameters.Clear(); cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.BigInt)).Value = alu.legajo; reader = cmd.ExecuteReader(); alu.tutores = new List <Tutor>(); while (reader.Read()) { Tutor tut = new Tutor(); tut.id = (long)reader["TUT_ID"]; alu.tutores.Add(tut); } reader.Close(); } reader.Close(); tx.Commit(); connection.Close(); } catch (Exception ex) { if (reader != null) { reader.Close(); } tx.Rollback(); connection.Close(); throw ex; } return(alumnos); }