예제 #1
0
    private string GenerarArbol(string sNodos, bool bMostrarInactivos, bool bExcede)
    {
        try
        {
            //int iMax = 0;
            StringBuilder sb        = new StringBuilder();
            string        sColor    = "black";
            int           nNivelExp = 1;
            SqlDataReader dr        = null;

            if (!SUPER.Capa_Negocio.Utilidades.EsAdminProduccion())
            {
                if (bExcede)
                {
                    dr = Estructura.GetEstructuraOrganizativa(bMostrarInactivos);
                }
                else
                {
                    dr = Estructura.GetEstructuraOrganizativaNodos(sNodos);
                }
            }
            else
            {
                dr = Estructura.GetEstructuraOrganizativa(bMostrarInactivos);
            }

            if (!bMostrarTodo)
            {
                if (Utilidades.EstructuraActiva("SN4"))
                {
                    nNivelExp = 1;
                }
                else if (Utilidades.EstructuraActiva("SN3"))
                {
                    nNivelExp = 2;
                }
                else if (Utilidades.EstructuraActiva("SN2"))
                {
                    nNivelExp = 3;
                }
                else if (Utilidades.EstructuraActiva("SN1"))
                {
                    nNivelExp = 4;
                }
            }

            sb.Append("<TABLE class='texto MAM' id=tblDatos style='WIDTH: 430px;'>");
            sb.Append("<tbody>");
            while (dr.Read())
            {
                if (!bMostrarTodo && (
                        (Utilidades.EstructuraActiva("SN4") == false && (int)dr["INDENTACION"] == 1) ||
                        (Utilidades.EstructuraActiva("SN3") == false && (int)dr["INDENTACION"] == 2) ||
                        (Utilidades.EstructuraActiva("SN2") == false && (int)dr["INDENTACION"] == 3) ||
                        (Utilidades.EstructuraActiva("SN1") == false && (int)dr["INDENTACION"] == 4)
                        ))
                {
                    continue;
                }
                if ((int)dr["INDENTACION"] == 6)
                {
                    continue;
                }
                sColor = "black";

                if (!(bool)dr["ESTADO"])
                {
                    sColor = "gray";
                }

                if ((int)dr["INDENTACION"] <= nNivelExp)
                {
                    sb.Append("<tr id='" + dr["SN4"].ToString() + "-" + dr["SN3"].ToString() + "-" + dr["SN2"].ToString() + "-" + dr["SN1"].ToString() + "-" + dr["NODO"].ToString() + "' ");
                    sb.Append(" ondblclick='insertarItem(this)' onmousedown='DD(event)' onclick='mm(event)' ");
                    sb.Append(" style='DISPLAY: table-row; HEIGHT: 20px; vertical-align:middle;' nivel=" + dr["INDENTACION"].ToString() + " >");

                    if ((int)dr["INDENTACION"] < 5)
                    {
                        if ((int)dr["INDENTACION"] < nNivelExp)
                        {
                            sb.Append("<td><IMG class='N" + dr["INDENTACION"].ToString() + "' onclick=mostrar(this) src='../../../../images/minus.gif' style='cursor:pointer;'>");
                        }
                        else
                        {
                            sb.Append("<td><IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' onclick=mostrar(this) src='../../../../images/plus.gif' style='cursor:pointer;'>");
                        }
                    }
                    else
                    {
                        sb.Append("<td><IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' src='../../../../images/imgSeparador.gif'>");
                    }
                }
                else
                {
                    sb.Append("<tr id='" + dr["SN4"].ToString() + "-" + dr["SN3"].ToString() + "-" + dr["SN2"].ToString() + "-" + dr["SN1"].ToString() + "-" + dr["NODO"].ToString() + "' ");
                    sb.Append(" ondblclick='insertarItem(this)' onmousedown='DD(event)' onclick='mm(event)' ");
                    sb.Append(" style='DISPLAY: none; HEIGHT: 20px; vertical-align:middle;' nivel=" + dr["INDENTACION"].ToString() + " >");
                    sb.Append("<td>");
                    if ((int)dr["INDENTACION"] < 5)
                    {
                        sb.Append("<IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' onclick=mostrar(this) src='../../../../images/plus.gif' style='cursor:pointer;'>");
                    }
                    else
                    {
                        sb.Append("<IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' src='../../../../images/imgSeparador.gif'>");
                    }
                }

                switch ((int)dr["INDENTACION"])
                {
                case 1:
                case 2:
                case 3:
                case 4:
                    sb.Append("<IMG src='../../../../images/imgSN" + dr["sufijoimg"].ToString() + ".gif' style='margin-left:3px;margin-right:3px;'>");
                    break;

                case 5:
                    sb.Append("<IMG src='../../../../images/imgNodo.gif' style='margin-left:3px;margin-right:3px;'>");
                    break;
                    //case 6:
                    //    sb.Append("<IMG src='../../../../images/imgSubNodo.gif' style='margin-left:3px;margin-right:3px;'>");
                    //    break;
                }
                string sDeno = (origen != "condispo") ? dr["DENOMINACION"].ToString() : dr["DENOMINACION2"].ToString();
                sb.Append("<label class='texto' style='color:" + sColor + "'>" + sDeno + "</label></td>");
                sb.Append("</tr>");
                //if (iMax++ > 20) break;
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            return("OK@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener la estructura organizativa", ex));
        }
    }
    private void GenerarArbol()
    {
        SqlDataReader dr = Estructura.GetEstructuraOrganizativa(false);
        StringBuilder sb = new StringBuilder();

        string sColor = "black";

        nNE = int.Parse(Request.QueryString["nNE"].ToString());

        sb.Append("<TABLE class=texto id=tblDatos style='WIDTH: 500px; BORDER-COLLAPSE: collapse' cellspacing=0 cellpadding=0 border=0>");
        while (dr.Read())
        {
            sColor = "black";
            if (!(bool)dr["ESTADO"])
            {
                sColor = "gray";
            }
            if ((int)dr["INDENTACION"] <= nNE)
            {
                sb.Append("<tr class='MA' id='" + dr["SN4"].ToString() + "-" + dr["SN3"].ToString() + "-" + dr["SN2"].ToString() + "-" + dr["SN1"].ToString() + "-" + dr["NODO"].ToString() + "' ");
                sb.Append(" style='color:" + sColor + "; DISPLAY:block; HEIGHT:20px; vertical-align:middle;' nivel='" + dr["INDENTACION"].ToString() + "' ondblclick='mdn(this)'>");

                if ((int)dr["INDENTACION"] < 5)
                {
                    if ((int)dr["INDENTACION"] < nNE)
                    {
                        sb.Append("<td><IMG class='N" + dr["INDENTACION"].ToString() + "' onclick=mostrar(this) src='../../../images/minus.gif' style='cursor:pointer;'>");
                    }
                    else
                    {
                        sb.Append("<td><IMG class='N" + dr["INDENTACION"].ToString() + "' onclick=mostrar(this) src='../../../images/plus.gif' style='cursor:pointer;'>");
                    }
                }
                else
                {
                    sb.Append("<td><IMG class='N" + dr["INDENTACION"].ToString() + "' src='../../../images/imgSeparador.gif'>");
                }
            }
            else
            {
                sb.Append("<tr class='MA' id='" + dr["SN4"].ToString() + "-" + dr["SN3"].ToString() + "-" + dr["SN2"].ToString() + "-" + dr["SN1"].ToString() + "-" + dr["NODO"].ToString() + "' ");
                sb.Append(" style='color:" + sColor + ";DISPLAY:none; HEIGHT:20px; vertical-align:middle;' nivel='" + dr["INDENTACION"].ToString() + "' ondblclick='mdn(this)'>");
                sb.Append("<td>");
                if ((int)dr["INDENTACION"] < 5)
                {
                    sb.Append("<IMG class='N" + dr["INDENTACION"].ToString() + "' onclick=mostrar(this) src='../../../images/plus.gif' style='cursor:pointer;'>");
                }
                else
                {
                    sb.Append("<IMG class='N" + dr["INDENTACION"].ToString() + "' src='../../../images/imgSeparador.gif'>");
                }
            }
            if ((int)dr["INDENTACION"] < 5)
            {
                sb.Append("<IMG src='../../../images/imgSN" + dr["INDENTACION"].ToString() + ".gif' style='margin-left:3px;margin-right:3px;'>");
            }
            else
            {
                sb.Append("<IMG src='../../../images/imgNodo.gif' style='margin-left:3px;margin-right:3px;'>");
            }

            sb.Append(dr["DENOMINACION"].ToString() + "</td>");
            sb.Append("</tr>");

            //if (!(bool)dr["ESTADO"])
            //{
            //    oNodoAux.DefaultStyle = css;
            //    oNodoAux.HoverStyle = css2;
            //}
        }
        dr.Close();
        dr.Dispose();
        sb.Append("</table>");

        divCatalogo.InnerHtml = sb.ToString();
    }
예제 #3
0
    private string GenerarArbol(string sSubnodos, bool bMostrarInactivos, bool bExcede, string sOrigen)
    {
        try
        {
            StringBuilder sb        = new StringBuilder();
            string        sColor    = "black";
            int           nNivelExp = 1;
            SqlDataReader dr        = null;
            //Si es administrador o vengo de la pantalla de consulta de experiencias profesionales, muestro todo el árbol
            if (SUPER.Capa_Negocio.Utilidades.EsAdminProduccion() || sOrigen == "cvt_exp")
            {
                dr = Estructura.GetEstructuraOrganizativa(bMostrarInactivos);
            }
            else
            {
                if (bExcede || sSubnodos == "")
                {
                    //dr = Estructura.GetEstructuraOrganizativa(bMostrarInactivos);
                    dr = Estructura.GetEstructuraOrganizativa((int)Session["UsuarioActual"], bMostrarInactivos, sOrigen);
                }
                else
                {
                    dr = Estructura.GetEstructuraOrganizativaSubnodos(sSubnodos, bMostrarInactivos);
                }
            }

            if (Utilidades.EstructuraActiva("SN4"))
            {
                nNivelExp = 1;
            }
            else if (Utilidades.EstructuraActiva("SN3"))
            {
                nNivelExp = 2;
            }
            else if (Utilidades.EstructuraActiva("SN2"))
            {
                nNivelExp = 3;
            }
            else if (Utilidades.EstructuraActiva("SN1"))
            {
                nNivelExp = 4;
            }


            sb.Append("<table class='texto MAM' id='tblDatos' style='width:430px;'>");
            sb.Append("<tbody>");
            while (dr.Read())
            {
                //if (
                //    (Utilidades.EstructuraActiva("SN4") == false && (int)dr["INDENTACION"] == 1)
                //    || (Utilidades.EstructuraActiva("SN3") == false && (int)dr["INDENTACION"] == 2)
                //    || (Utilidades.EstructuraActiva("SN2") == false && (int)dr["INDENTACION"] == 3)
                //    || (Utilidades.EstructuraActiva("SN1") == false && (int)dr["INDENTACION"] == 4)
                //    ) continue;
                if ((int)dr["INDENTACION"] < nNivelExp)
                {
                    continue;
                }

                sColor = "black";
                if (!(bool)dr["ESTADO"])
                {
                    sColor = "gray";
                }

                if ((int)dr["INDENTACION"] <= nNivelExp)
                {
                    sb.Append("<tr id='" + dr["SN4"].ToString() + "-" + dr["SN3"].ToString() + "-" + dr["SN2"].ToString() + "-" + dr["SN1"].ToString() + "-" + dr["NODO"].ToString() + "-" + dr["SUBNODO"].ToString() + "' ");
                    sb.Append(" ondblclick='insertarItem(this)' onmousedown='DD(event);' ");
                    sb.Append(" style='display:table-row; height:20px; vertical-align:middle;' nivel=" + dr["INDENTACION"].ToString() + " >");

                    if ((int)dr["INDENTACION"] < 6)
                    {
                        if ((int)dr["INDENTACION"] < nNivelExp)
                        {
                            sb.Append("<td><IMG class='N" + dr["INDENTACION"].ToString() + "' onclick=mostrar(this) src='../../../../images/minus.gif' style='cursor:pointer;'>");
                        }
                        else
                        {
                            sb.Append("<td><IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' onclick=mostrar(this) src='../../../../images/plus.gif' style='cursor:pointer;'>");
                        }
                    }
                    else
                    {
                        sb.Append("<td><IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' src='../../../../images/imgSeparador.gif'>");
                    }
                }
                else
                {
                    sb.Append("<tr id='" + dr["SN4"].ToString() + "-" + dr["SN3"].ToString() + "-" + dr["SN2"].ToString() + "-" + dr["SN1"].ToString() + "-" + dr["NODO"].ToString() + "-" + dr["SUBNODO"].ToString() + "' ");
                    sb.Append(" ondblclick='insertarItem(this)' onmousedown='DD(event)' ");
                    sb.Append(" style='display:none; height:20px; vertical-align:middle;' nivel=" + dr["INDENTACION"].ToString() + " >");
                    sb.Append("<td>");
                    if ((int)dr["INDENTACION"] < 6)
                    {
                        sb.Append("<IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' onclick=mostrar(this) src='../../../../images/plus.gif' style='cursor:pointer;'>");
                    }
                    else
                    {
                        sb.Append("<IMG class='N" + ((int)dr["INDENTACION"] - nNivelExp + 1).ToString() + "' src='../../../../images/imgSeparador.gif'>");
                    }
                }

                switch ((int)dr["INDENTACION"])
                {
                case 1:
                case 2:
                case 3:
                case 4:
                    sb.Append("<IMG src='../../../../images/imgSN" + dr["sufijoimg"].ToString() + ".gif' style='margin-left:3px;margin-right:3px;'>");
                    break;

                case 5:
                    sb.Append("<IMG src='../../../../images/imgNodo.gif' style='margin-left:3px;margin-right:3px;'>");
                    break;

                case 6:
                    sb.Append("<IMG src='../../../../images/imgSubNodo.gif' style='margin-left:3px;margin-right:3px;'>");
                    break;
                }

                sb.Append("<label class='texto MAM' style='color:" + sColor + "'>" + dr["DENOMINACION"].ToString() + "</label></td>");
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            return("OK@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener la estructura organizativa", ex));
        }
    }