示例#1
0
        public static void update(Docente docenteViejo, Docente docenteNuevo)
        {
            string sql = @"UPDATE       docentes
                         SET                id_horario_trabajo = @id_horario_trabajo_nuevo, salario = @salario_nuevo
                        WHERE        (legajo = @legajoDocente)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@legajoDocente", docenteViejo.legajo);
                cmd.Parameters.AddWithValue("@id_horario_trabajo_nuevo", HorarioDao.update(docenteNuevo.horarioTrabajo));
                cmd.Parameters.AddWithValue("@salario_nuevo", docenteNuevo.salario);
                PersonaDao.update(docenteViejo.docente, docenteNuevo.docente);


                cmd.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al actualizar los datos del Docente" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }
示例#2
0
        //Retorna TRUE si se insertó correctamente; FALSE en todo otro caso.
        public static int add(Docente docente, Persona docenteP, Horario horarioTrabajo)
        {
            int    i   = -1;
            string sql = @"INSERT INTO docentes
                         (id_persona, id_horario_trabajo, salario)
                         VALUES        (@id_persona,@id_horario_trabajo,@salario) SELECT CAST(scope_identity() AS int)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@id_persona", PersonaDao.add(docenteP));
                cmd.Parameters.AddWithValue("@id_horario_trabajo", HorarioDao.add(horarioTrabajo));
                cmd.Parameters.AddWithValue("@salario", docente.salario);
                resetearAutoIncrement(MaxLegajo() - 1); // aca le pone el autoincrement en el ultimo legajo de la tabla, pido el max legajo, -1 es el ultimo de la tabla
                i = (Int32)cmd.ExecuteScalar();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al insertar al Docente" + ex.Message);
            }
            finally
            {
                cn.Close();
            }

            return(i);
        }
示例#3
0
        public static void delete(Docente docente)
        {
            int i = -1;

            string sql = @"DELETE FROM docentes
                         WHERE        (legajo = @legajo)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@legajo", docente.legajo);



                cmd.ExecuteNonQuery();
                PersonaDao.delete(docente.docente);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al eliminar el Docente" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }
示例#4
0
        public static void delete(Alumno alumno)
        {
            string sql = @"DELETE FROM alumnos
                         WHERE        (legajo = @legajo) SELECT CAST(scope_identity() AS int)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@legajo", alumno.legajo);

                cmd.ExecuteScalar();

                PersonaDao.delete(alumno.alumno);
                PersonaDao.delete(alumno.madre);
                PersonaDao.delete(alumno.padre);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al eliminar el Alumno" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }
示例#5
0
        public static Alumno obtenerPorLegajo(int legajo)
        {
            Alumno alumno = new Alumno();
            string sql    = @"SELECT        a.legajo, a.id_persona, a.id_madre, a.id_padre, a.conoce_musica, a.id_nivel_estudio, pA.id, pA.nombre, pA.apellido, pA.nro_documento, pA.domicilio, pA.telefono, pA.id_tipo_documento, pA.celular, pA.mail, 
                         pA.fecha_nacimiento
                         FROM            alumnos AS a INNER JOIN
                         personas AS pA ON a.id_persona = pA.id
                         WHERE        (a.legajo = @legajo)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);
                cmd.Parameters.AddWithValue("@legajo", legajo);
                SqlDataReader dr = cmd.ExecuteReader();
                if (!dr.HasRows)
                {
                    alumno = null;
                }
                else
                {
                    dr.Read();

                    //alumno.legajo = (int)dr["legajo"];
                    //alumno.legajo = legajo;
                    //alumno.alumno = PersonaDao.obtenerPersona(int.Parse(dr["id_persona"].ToString()));
                    //alumno.conoceMusica = Boolean.Parse(dr["conoce_musica"].ToString());
                    //alumno.madre = PersonaDao.obtenerPersona(int.Parse(dr["id_madre"].ToString()));
                    //alumno.padre = PersonaDao.obtenerPersona(int.Parse(dr["id_padre"].ToString()));
                    //alumno.nivelEstudio = NivelEstudioDao.obtener(int.Parse(dr["id_nivel_estudio"].ToString()));

                    alumno.alumno       = PersonaDao.obtenerPersona((int)(dr["id_persona"]));
                    alumno.legajo       = (int)dr["legajo"];
                    alumno.conoceMusica = (Boolean)dr["conoce_musica"];
                    alumno.madre        = PersonaDao.obtenerPersona((int)(dr["id_madre"]));
                    alumno.padre        = PersonaDao.obtenerPersona((int)(dr["id_padre"]));
                    alumno.nivelEstudio = NivelEstudioDao.obtener((int)(dr["id_nivel_estudio"]));
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar al Alumno" + ex.Message);
            }
            finally
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
            }

            return(alumno);
        }
示例#6
0
        public static Docente obtenerPorLegajo(int legajo)
        {
            Docente docente = new Docente();
            string  sql     = @"SELECT        d.legajo, d.id_persona, d.id_horario_trabajo, d.salario, p.id, p.nombre, p.apellido, p.nro_documento, p.domicilio, p.telefono, p.id_tipo_documento, p.celular, p.mail, p.fecha_nacimiento
                         FROM            docentes AS d INNER JOIN
                         personas AS p ON d.id_persona = p.id
                         WHERE        (d.legajo = @legajo)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);
                cmd.Parameters.AddWithValue("@legajo", legajo);
                SqlDataReader dr = cmd.ExecuteReader();
                if (!dr.HasRows)
                {
                    docente = null;
                }
                else
                {
                    dr.Read();
                    docente.legajo         = (int)dr["legajo"];
                    docente.docente        = PersonaDao.obtenerPersona((int)(dr["id_persona"]));
                    docente.horarioTrabajo = HorarioDao.obtener((int)(dr["id_horario_trabajo"]));
                    docente.salario        = float.Parse(dr["salario"].ToString());

                    dr.Close();
                    cn.Close();
                }
            }
            catch (SqlException ex)
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
                throw new ApplicationException("Error al buscar el Docente" + ex.Message);
            }
            return(docente);
        }
示例#7
0
        public static List <Docente> obtenerTodo()
        {
            List <Docente> listDocentes = new List <Docente>();

            string sql = @"SELECT        d.legajo, d.id_persona, d.id_horario_trabajo, d.salario, p.id, p.nombre, p.apellido, p.nro_documento, p.telefono, p.id_tipo_documento, p.celular, p.mail, p.fecha_nacimiento
                         FROM            docentes AS d INNER JOIN
                         personas AS p ON d.id_persona = p.id";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand    cmd = new SqlCommand(sql, cn);
                SqlDataReader dr  = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Docente docente = new Docente();

                    docente.docente        = PersonaDao.obtenerPersona(int.Parse(dr["id_persona"].ToString()));
                    docente.legajo         = int.Parse(dr["legajo"].ToString());
                    docente.horarioTrabajo = HorarioDao.obtener((int)dr["id_horario_trabajo"]);
                    docente.salario        = float.Parse(dr["salario"].ToString());

                    listDocentes.Add(docente);
                }
                dr.Close();
                cn.Close();
            }
            catch (SqlException ex)
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
                throw new ApplicationException("Error al buscar los Docentes" + ex.Message);
            }
            return(listDocentes);
        }
示例#8
0
        public static List <Alumno> obtenerTodo()
        {
            List <Alumno> listAlumnos = new List <Alumno>();

            string sql = "SELECT * FROM alumnos a JOIN personas pA ON (a.id_persona = pA.id) ";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand    cmd = new SqlCommand(sql, cn);
                SqlDataReader dr  = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Alumno alumno = new Alumno()
                    {
                        alumno       = PersonaDao.obtenerPersona((int)(dr["id_persona"])),
                        legajo       = (int)dr["legajo"],
                        conoceMusica = (Boolean)dr["conoce_musica"],
                        madre        = PersonaDao.obtenerPersona((int)(dr["id_madre"])),
                        padre        = PersonaDao.obtenerPersona((int)(dr["id_padre"])),
                        nivelEstudio = NivelEstudioDao.obtener((int)(dr["id_nivel_estudio"]))
                    };
                    listAlumnos.Add(alumno);
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar los Alumnos" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
            return(listAlumnos);
        }
示例#9
0
        public static List <Docente> buscarPorParametros(String nombre, String apellido, int legajo, int tipo_documento, int numero)
        {
            List <Docente> listDocentes = new List <Docente>();

            string sql = @"SELECT        a.legajo, a.id_persona, id_horario_trabajo, salario
                         FROM            docentes AS a INNER JOIN
                         personas AS pA ON a.id_persona = pA.id
                         WHERE        (1 = 1) ";

            if (nombre != "")
            {
                sql += " AND (pA.nombre LIKE @nombre)";
            }
            if (apellido != "")
            {
                sql += " AND (pA.apellido LIKE @apellido)";
            }
            if (legajo != 0)
            {
                sql += " AND (a.legajo = @legajo)";
            }
            if (tipo_documento != 0 && numero != 0)
            {
                sql += " AND (pA.id_tipo_documento = @tipo_documento) AND (pA.nro_documento = @numero)";
            }

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                if (nombre != "")
                {
                    cmd.Parameters.AddWithValue("@nombre", "%" + nombre + "%");
                }
                if (apellido != "")
                {
                    cmd.Parameters.AddWithValue("@apellido", "%" + apellido + "%");
                }
                if (legajo != 0)
                {
                    cmd.Parameters.AddWithValue("@legajo", legajo);
                }
                if (tipo_documento != 0 && numero != 0)
                {
                    cmd.Parameters.AddWithValue("@tipo_documento", tipo_documento);
                    cmd.Parameters.AddWithValue("@numero", numero);
                }

                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Docente docente = new Docente()
                    {
                        legajo         = (int)dr["legajo"],
                        docente        = PersonaDao.obtenerPersona((int)(dr["id_persona"])),
                        salario        = float.Parse(dr["salario"].ToString()),
                        horarioTrabajo = HorarioDao.obtener(int.Parse(dr["id_horario_trabajo"].ToString()))
                    };
                    listDocentes.Add(docente);
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar los Docentes" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
            return(listDocentes);
        }
示例#10
0
        public static List <Alumno> buscarPorParametros(String nombre, String apellido, int legajo)
        {
            List <Alumno> listAlumnos = new List <Alumno>();

            string sql = @"SELECT        a.legajo, a.id_persona, a.id_madre, a.id_padre, a.conoce_musica, a.id_nivel_estudio
                         FROM            alumnos AS a INNER JOIN
                         personas AS pA ON a.id_persona = pA.id
                         WHERE        (1 = 1) ";

            if (nombre != "")
            {
                sql += " AND (pA.nombre LIKE @nombre)";
            }
            if (apellido != "")
            {
                sql += " AND (pA.apellido LIKE @apellido)";
            }
            if (legajo != 0)
            {
                sql += " AND (a.legajo = @legajo)";
            }

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                if (nombre != "")
                {
                    cmd.Parameters.AddWithValue("@nombre", "%" + nombre + "%");
                }
                if (apellido != "")
                {
                    cmd.Parameters.AddWithValue("@apellido", "%" + apellido + "%");
                }
                if (legajo != 0)
                {
                    cmd.Parameters.AddWithValue("@legajo", legajo);
                }

                SqlDataReader dr = cmd.ExecuteReader();
                int           c  = 0;
                while (dr.Read())
                {
                    Alumno alumno = new Alumno()
                    {
                        legajo       = (int)dr["legajo"],
                        conoceMusica = (Boolean)dr["conoce_musica"],
                        madre        = PersonaDao.obtenerPersona((int)(dr["id_madre"])),
                        padre        = PersonaDao.obtenerPersona((int)(dr["id_padre"])),
                        nivelEstudio = NivelEstudioDao.obtener((int)(dr["id_nivel_estudio"]))
                    };

                    listAlumnos.Add(alumno); //lleno la coleccion en memoria
                    c++;
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar los Alumnos" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
            return(listAlumnos);
        }
示例#11
0
        public static void update(Alumno alumnoViejo, Alumno alumnoNuevo, Persona personaAlumnoViejo, Persona personaAlumnoNuevo, Persona madreVieja, Persona padreViejo, Persona madreNueva, Persona padreNuevo)
        {
            string sql = @"UPDATE       alumnos
                         SET                conoce_musica = @conoce_musica_nuevo, id_nivel_estudio = @id_nivel_estudio_nuevo
                         WHERE        (legajo = @legajoAlumno)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                int idNivelEstudioNuevo = 0;

                switch (alumnoNuevo.nivelEstudio.descripcion)
                {
                case "Sin Estudios": idNivelEstudioNuevo = 1;
                    break;

                case "Primario Incompleto": idNivelEstudioNuevo = 2;
                    break;

                case "Primario Completo": idNivelEstudioNuevo = 3;
                    break;

                case "Secundario Incompleto": idNivelEstudioNuevo = 4;
                    break;

                case "Secundario Completo": idNivelEstudioNuevo = 5;
                    break;

                case "Terciario Incompleto": idNivelEstudioNuevo = 6;
                    break;

                case "Terciario Completo": idNivelEstudioNuevo = 7;
                    break;

                case "Universitario Incompleto": idNivelEstudioNuevo = 8;
                    break;

                case "Universitario Completo": idNivelEstudioNuevo = 9;
                    break;

                case "Posgrado": idNivelEstudioNuevo = 10;
                    break;
                }

                PersonaDao.update(madreVieja, madreNueva);
                PersonaDao.update(padreViejo, padreNuevo);
                PersonaDao.update(personaAlumnoViejo, personaAlumnoNuevo);
                cmd.Parameters.AddWithValue("@legajoAlumno", alumnoViejo.legajo);
                cmd.Parameters.AddWithValue("@conoce_musica_nuevo", (Boolean)alumnoNuevo.conoceMusica);
                cmd.Parameters.AddWithValue("@id_nivel_estudio_nuevo", idNivelEstudioNuevo);



                cmd.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al actualizar los datos del Alumno" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }
示例#12
0
        public static void add(Alumno alumno, Persona madre, Persona alumnoP, Persona padre)
        {
            int           i   = -1;
            String        sql = @"INSERT INTO alumnos
                         (id_persona, id_madre, id_padre, conoce_musica, id_nivel_estudio)
                         VALUES        (@id_persona,@id_madre,@id_padre,@conoce_musica,@id_nivel_estudio) SELECT CAST(scope_identity() AS int)";
            SqlConnection cn  = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@id_persona", PersonaDao.add(alumnoP));
                cmd.Parameters.AddWithValue("@id_madre", PersonaDao.add(madre));
                cmd.Parameters.AddWithValue("@id_padre", PersonaDao.add(padre));
                cmd.Parameters.AddWithValue("@conoce_musica", (Boolean)alumno.conoceMusica);
                cmd.Parameters.AddWithValue("@legajo", (int)alumno.legajo); //NO SE PARA QUE ESTA SI NO HACE FALTA EL LEGAJO

                int idNivelEstudio = 0;
                switch (alumno.nivelEstudio.descripcion)
                {
                case "Sin Estudios": idNivelEstudio = 1;
                    break;

                case "Primario Incompleto": idNivelEstudio = 2;
                    break;

                case "Primario Completo": idNivelEstudio = 3;
                    break;

                case "Secundario Incompleto": idNivelEstudio = 4;
                    break;

                case "Secundario Completo": idNivelEstudio = 5;
                    break;

                case "Terciario Incompleto": idNivelEstudio = 6;
                    break;

                case "Terciario Completo": idNivelEstudio = 7;
                    break;

                case "Universitario Incompleto": idNivelEstudio = 8;
                    break;

                case "Universitario Completo": idNivelEstudio = 9;
                    break;

                case "Posgrado": idNivelEstudio = 10;
                    break;
                }
                cmd.Parameters.AddWithValue("@id_nivel_estudio", idNivelEstudio);
                resetearAutoIncrement(MaxLegajo() - 1); // aca le pone el autoincrement en el ultimo legajo de la tabla, pido el max legajo, -1 es el ultimo de la tabla

                i = (Int32)cmd.ExecuteScalar();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al insertar el Alumno" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }