コード例 #1
0
        public Bug getBugById(int id)
        {
            DataManager dm  = new DataManager();
            Bug         bug = null;

            try
            {
                dm.Open();

                string sql = "   SELECT TOP 20 bug.id_bug, bug.titulo, bug.descripcion, pro.nombre, bug.fecha_alta, n_estado as estado, usr.n_usuario as asignado_a, n_prioridad, cri.n_criticidad, pro.id_producto, pri.id_prioridad, cri.id_criticidad" +
                             "   FROM  bugs bug" +
                             "   INNER JOIN Historiales_Bug his ON bug.id_bug = his.id_bug" +
                             "   INNER JOIN Estados est ON his.id_estado = est.id_estado" +
                             "   LEFT JOIN Users usr ON his.asignado_a = usr.id_usuario" +
                             "   INNER JOIN Productos pro ON bug.id_producto = pro.id_producto" +
                             "   INNER JOIN Prioridades pri ON bug.id_prioridad = pri.id_prioridad" +
                             "   INNER JOIN Criticidades cri ON bug.id_criticidad = cri.id_criticidad" +
                             "   WHERE his.id_detalle = (SELECT MAX(id_detalle) FROM Historiales_Bug his2 WHERE bug.id_bug = his2.id_bug)" +
                             "         AND bug.id_bug = " + id.ToString();


                bug = mapBug(dm.ConsultaSQL(sql).Rows[0]);

                HistorialBugDao oHistorialBug = new HistorialBugDao();
                bug.historial.AddRange(oHistorialBug.getById(bug.id_bug));
            }
            catch (Exception ex)
            {
                dm.Rollback();
            }
            finally
            {
                // Cierra la conexión
                dm.Close();
            }


            return(bug);
        }
コード例 #2
0
        public IList <Bug> getBugByFilters(List <object> parametros)
        {
            DataManager dm  = new DataManager();
            List <Bug>  lst = new List <Bug>();

            try
            {
                dm.Open();
                string sql = "   SELECT TOP 20 bug.id_bug, bug.titulo, bug.descripcion, pro.nombre, bug.fecha_alta, n_estado as estado, usr.n_usuario as asignado_a, n_prioridad, cri.n_criticidad" +
                             "   FROM  bugs bug" +
                             "   INNER JOIN Historiales_Bug his ON bug.id_bug = his.id_bug" +
                             "   INNER JOIN Estados est ON his.id_estado = est.id_estado" +
                             "   LEFT JOIN Users usr ON his.asignado_a = usr.id_usuario" +
                             "   INNER JOIN Productos pro ON bug.id_producto = pro.id_producto" +
                             "   INNER JOIN Prioridades pri ON bug.id_prioridad = pri.id_prioridad" +
                             "   INNER JOIN Criticidades cri ON bug.id_criticidad = cri.id_criticidad" +
                             "   WHERE his.id_detalle = (SELECT MAX(id_detalle) FROM Historiales_Bug his2 WHERE bug.id_bug = his2.id_bug)";

                if (parametros[0] != null && parametros[1] != null)
                {
                    sql += " AND (bug.fecha_alta>=@param1 AND bug.fecha_alta<=@param2) ";
                }
                if (parametros[2] != null)
                {
                    sql += "AND bug.id_prioridad=@param3 ";
                }
                if (parametros[3] != null)
                {
                    sql += "AND bug.id_criticidad=@param4 ";
                }
                if (parametros[4] != null)
                {
                    sql += "AND bug.id_producto=@param5 ";
                }
                if (parametros[5] != null)
                {
                    sql += " AND his.id_estado=@param6 ";
                }
                if (parametros[6] != null)
                {
                    sql += " AND his.asignado_a=@param7 ";
                }
                sql += "ORDER BY bug.fecha_alta DESC";

                foreach (DataRow row in dm.ConsultaSQLConParametros(sql, parametros).Rows)
                {
                    Bug             bug           = mapSmallBug(row);
                    HistorialBugDao oHistorialBug = new HistorialBugDao();
                    bug.historial.AddRange(oHistorialBug.getById(bug.id_bug));
                    lst.Add(bug);
                }
            }
            catch (Exception ex)
            {
                dm.Rollback();
            }
            finally
            {
                // Cierra la conexión
                dm.Close();
            }

            return(lst);
        }