示例#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 List <Curso> buscarPorParametros(String nombre)
        {
            List <Curso>  listCursos = new List <Curso>();
            string        sql        = @"SELECT        cursos.id_curso, cursos.nombre, cursos.descripcion, cursos.id_horario, horarios.id_horario AS Expr1, horarios.horario_inicio, horarios.horario_fin
                         FROM            cursos INNER JOIN
                         horarios ON cursos.id_horario = horarios.id_horario
                         WHERE        (cursos.nombre LIKE @nombre)";
            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("@nombre", "%" + nombre + "%");
                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Curso curso = new Curso()
                    {
                        nombre      = dr["nombre"].ToString(),
                        descripcion = dr["descripcion"].ToString(),
                        horario     = HorarioDao.obtener((int)dr["id_horario"]),
                        //hora_desde = dr["horario_inicio"].ToString(),
                        //hora_hasta = dr["horario_fin"].ToString()
                    };
                    listCursos.Add(curso); //lleno la coleccion en memoria
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
                ex.StackTrace.ToString();
                throw new ApplicationException("Error al buscar los cursos por nombre" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
            return(listCursos);
        }
示例#4
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);
        }
示例#5
0
        public static void update(Curso cursoViejo, Curso cursoNuevo, Horario horarioViejo, Horario horarioNuevo)
        {
            int    comprobar = 0;
            string sqlCurso  = @"UPDATE       cursos
                              SET          nombre = @nombre, descripcion = @descripcion, id_horario = @id_horario
                              WHERE        (nombre LIKE @nombre_viejo) AND (descripcion LIKE @descripcion_vieja) AND (id_horario = @id_horario_viejo)";
            //string sqlHorario = "update horario set hora_desde=@hora_desde, hora_hasta=@hora_hasta where hora_desde=@hora_desde_vieja and hora_hasta=hora_hasta_vieja";
            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            try
            {
                cn.Open();
                //Se reemplaza por el metodo update() de HorarioDao:
                //SqlCommand cmd = new SqlCommand(sqlHorario, cn);
                //cmd.Parameters.AddWithValue("horario_desde", cursoNuevo.hora_desde);
                //cmd.Parameters.AddWithValue("horario_hasta", cursoNuevo.hora_hasta);
                //cmd.Parameters.AddWithValue("hora_desde_vieja", cursoViejo.hora_desde);
                //cmd.Parameters.AddWithValue("hora_hasta_vieja", cursoViejo.hora_hasta);
                //cmd.ExecuteNonQuery();
                //cmd = null;

                SqlCommand cmd = new SqlCommand(sqlCurso, cn);
                cmd.Parameters.AddWithValue("id_horario", HorarioDao.update(horarioNuevo));
                cmd.Parameters.AddWithValue("id_horario_viejo", HorarioDao.obtenerID(horarioViejo.desde, horarioViejo.hasta));
                cmd.Parameters.AddWithValue("nombre", cursoNuevo.nombre);
                cmd.Parameters.AddWithValue("descripcion", cursoNuevo.descripcion);
                cmd.Parameters.AddWithValue("nombre_viejo", cursoViejo.nombre);
                cmd.Parameters.AddWithValue("descripcion_vieja", cursoViejo.descripcion);

                comprobar = cmd.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al modificar el curso");
            }
            finally
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
            }
        }
示例#6
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);
        }
示例#7
0
        public static void Insertar(Curso curso, Horario horarioTrabajo)
        {
            string sqlCurso = @"INSERT INTO cursos
                              (nombre, descripcion, id_horario)
                              VALUES        (@nombre,@descripcion,@id_horario)";
            //string sqlHorario = "insert into horario values (@horario_desde, @horario_hasta)";

            SqlConnection cn = new SqlConnection();

            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            try
            {
                cn.Open();
                //Se reemplaza por la llamada al metodo add() de HorarioDao:
                //SqlCommand cmd = new SqlCommand(sqlHorario, cn);
                //cmd.Parameters.AddWithValue("horario_desde", curso.hora_desde);
                //cmd.Parameters.AddWithValue("horario_hasta", curso.hora_hasta);
                //int idHorario = 0;
                //cmd.ExecuteNonQuery();
                //idHorario = Convert.ToInt32(cmd.ExecuteScalar());
                //cmd = null;

                SqlCommand cmd = new SqlCommand(sqlCurso, cn);

                cmd.Parameters.AddWithValue("@nombre", curso.nombre);
                cmd.Parameters.AddWithValue("@descripcion", curso.descripcion);
                cmd.Parameters.AddWithValue("@id_horario", HorarioDao.add(horarioTrabajo));

                cmd.ExecuteNonQuery();
            } catch (SqlException ex)
            {
                throw new ApplicationException("Error al insertar el curso");
            }
            finally
            {
                if (cn.State == ConnectionState.Open)
                {
                    cn.Close();
                }
            }
        }
示例#8
0
        public static List <Curso> ObtenerTodo()
        {
            List <Curso>  listCursos = new List <Curso>();
            string        sql        = @"SELECT        cursos.id_curso, cursos.nombre, cursos.descripcion, cursos.id_horario, horarios.id_horario AS Expr1, horarios.horario_inicio, horarios.horario_fin
                         FROM            cursos INNER JOIN
                         horarios ON cursos.id_horario = horarios.id_horario";
            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);
                SqlDataReader dr  = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Curso curso = new Curso()
                    {
                        id_curso    = int.Parse(dr["id_curso"].ToString()),
                        nombre      = dr["nombre"].ToString(),
                        descripcion = dr["descripcion"].ToString(),
                        horario     = HorarioDao.obtener((int)dr["id_horario"]),
                    };
                    listCursos.Add(curso);
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                ex.StackTrace.ToString();
                throw new ApplicationException("Error al buscar los cursos");
            }
            finally
            {
                cn.Close();
            }
            return(listCursos);
        }
示例#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);
        }