⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rightcfg.java

📁 通过java语音实现灵活的权限控制功能
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    public void viewMenu(Vector menusub)
    {
        menu temp=null;//获得节点信息的临时变量

        for(int i=0;i<menusub.size();i++)
        {
            temp = (menu)menusub.elementAt(i);//获得一个节点



            if(temp.sub!=null)//判断是否又子节点,如果有则递归
            {
                if(temp.getStrParentId().equals("0"))//如果是第一级菜单节点
                {
                    retMenuscript=retMenuscript+"id_"+temp.getStrID()+
                            "=insFld(foldersTree, gFld(\""+temp.getStrName()+"\",\"javascript:parent.op()\"))\n";

                }
                else
                {
                    retMenuscript=retMenuscript+"id_"+temp.getStrID()+
                            "=insFld(id_"+temp.getStrParentId()+", gFld(\""+temp.getStrName()+"\",\"javascript:parent.op()\"))\n";

                }
                viewMenu(temp.sub);//递归调用
            }
            else//无子节点
            {
                if(temp.getStrParentId().equals("0"))//如果是第一级菜单节点
                {
                    retMenuscript=retMenuscript+"id_"+temp.getStrID()+
                            "=insDoc(foldersTree, gLnk(\"R\",\""+temp.getStrName()+"\",\""+temp.getStrLink()+"\"))\n";
                }
                else
                {
                    retMenuscript=retMenuscript+"id_"+temp.getStrID()+
                            "=insDoc(id_"+temp.getStrParentId()+", gLnk(\"R\",\""+temp.getStrName()+"\",\""+temp.getStrLink()+"\"))\n";
                }
            }
        }
    }


    /**
     * 菜单遍历(无权限判断)
     * 递归程序
     * @menusub 子节点的集合
     */
    public void viewMenuAll(Vector menusub)
    {
        menu temp=null;//获得节点信息的临时变量

        for(int i=0;i<menusub.size();i++)
        {
            temp = (menu)menusub.elementAt(i);//获得一个节点
            if(temp.sub!=null)//判断是否又子节点,如果有则递归
            {
                if(temp.getStrParentId().equals("0"))//如果是第一级菜单节点
                {
                    retMenuscript_buffer.append("id_"+temp.getStrID()+
                            "=insFld(foldersTree, gFld(\""+temp.getStrName()+
                            "\",\"javascript:parent.basefrm.basefrm.initValue2("+
                            "\\\""+temp.getStrName()+"\\\","+"\\\""+
                            "\\\","+"\\\""+temp.getStrGrade()+
                            "\\\","+"\\\""+temp.getStrID()+
                            "\\\","+"\\\""+temp.getStrParentId()+"\\\")"+"\"))\n");
                }
                else
                {
                    retMenuscript_buffer.append("id_"+temp.getStrID()+
                            "=insFld(id_"+temp.getStrParentId()+", gFld(\""+temp.getStrName()+
                            "\",\"javascript:parent.basefrm.basefrm.initValue2("+
                            "\\\""+temp.getStrName()+"\\\","+"\\\""+
                            "\\\","+"\\\""+temp.getStrGrade()+
                            "\\\","+"\\\""+temp.getStrID()+
                            "\\\","+"\\\""+temp.getStrParentId()+"\\\")"+"\"))\n");                     //去掉注释即调试用
                }
                viewMenuAll(temp.sub);
            }
            else//无子节点
            {
                if(temp.getStrParentId().equals("0"))//如果是第一级菜单节点
                {
                   /* retMenuscript_buffer.append("id_"+temp.getStrID()+
                            "=insDoc(foldersTree, gLnk(\"S\",\""+temp.getStrName()+
                            "\",\"javascript:parent.basefrm.initValue2("+
                            "\\\\\\'"+temp.getStrName()+"\\\\\\',"+"\\\\\\'"+
                            temp.getStrLink()+"\\\\\\',"+"\\\\\\'"+temp.getStrGrade()+
                            "\\\\\\',"+"\\\\\\'"+temp.getStrID()+
                            "\\\\\\',"+"\\\\\\'"+temp.getStrParentId()+"\\\\\\')"+"\"))\n");*/
                   retMenuscript_buffer.append("id_"+temp.getStrID()+
                          "=insFld(foldersTree, gFld(\""+temp.getStrName()+
                          "\",\"javascript:parent.basefrm.basefrm.initValue2("+
                          "\\\""+temp.getStrName()+"\\\","+"\\\""+
                          "\\\","+"\\\""+temp.getStrGrade()+
                          "\\\","+"\\\""+temp.getStrID()+
                          "\\\","+"\\\""+temp.getStrParentId()+"\\\")"+"\"))\n");

                }
                else
                {
                  if (!temp.getStrGrade().equalsIgnoreCase("3")) {
                    retMenuscript_buffer.append("id_" + temp.getStrID() +
                                                "=insFld(id_" + temp.getStrParentId() +
                                                ", gFld(\"" + temp.getStrName() +
                                                "\",\"javascript:parent.basefrm.basefrm.initValue2(" +
                                                "\\\"" + temp.getStrName() + "\\\"," +
                                                "\\\"" +
                                                "\\\"," + "\\\"" + temp.getStrGrade() +
                                                "\\\"," + "\\\"" + temp.getStrID() +
                                                "\\\"," + "\\\"" + temp.getStrParentId() +
                                                "\\\")" + "\"))\n"); //去掉注释即调试用
                  }
                  else {
                    retMenuscript_buffer.append("id_" + temp.getStrID() +
                                                "=insDoc(id_" + temp.getStrParentId() +
                                                ", gLnk(\"S\",\"" + temp.getStrName() +
                                                "\",\"javascript:parent.basefrm.initValue2(" +
                                                "\\\\\\'" + temp.getStrName() +
                                                "\\\\\\'," + "\\\\\\'" +
                                                temp.getStrLink() + "\\\\\\'," +
                                                "\\\\\\'" + temp.getStrGrade() +
                                                "\\\\\\'," + "\\\\\\'" + temp.getStrID() +
                                                "\\\\\\'," + "\\\\\\'" +
                                                temp.getStrParentId() + "\\\\\\')" +
                                                "\"))\n");

                  }
                }
            }
        }
    }






    /**
     * 写入菜单配置文件
     */

    public void WriteProp()
    {
        this.ReadData();//数据库读取菜单信息

        Properties m_MenuProps = new Properties();//菜单配置属性

        for(int i=0;i<mStru.length;i++)//设置 m_MenuProps
        {
            m_MenuProps.setProperty("Menu"+"_title"+String.valueOf(i+1),convertStr(mStru[i].getStrName()));
            m_MenuProps.setProperty("Menu"+"_right"+String.valueOf(i+1),convertStr(mStru[i].getStrID()));
            m_MenuProps.setProperty("Menu"+"_grade"+String.valueOf(i+1),convertStr(mStru[i].getStrGrade()));
            //m_MenuProps.setProperty("Menu"+"_grade_id"+String.valueOf(i+1),convertStr(mStru[i].getStrGradeId()));
            m_MenuProps.setProperty("Menu"+"_parent_id"+String.valueOf(i+1),convertStr(mStru[i].getStrParentId()));
            m_MenuProps.setProperty("Menu"+"_link"+String.valueOf(i+1),convertStr(mStru[i].getStrLink()));


        }
            m_MenuProps.setProperty("MenuCount",String.valueOf(mStru.length));

        try{//写入文件

            FileOutputStream out =new FileOutputStream(new File(strFilePath));
            m_MenuProps.store(out,"menu.prop");
            out.close();

        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }


    public void ReadData()
    {
      dbConnect dbconn0 = new dbConnect(conn_code);
        DBResultset dbrsRet=null;

       String sql = "SELECT  INTID,INTKEY,STRNAME, GRADE, PARENT_ID FROM  ALL_DATA_RIGHTITEM order by INTID";



       try {
         dbrsRet = dbconn0.runQuery(sql);

       if(dbrsRet==null) return ;
       if(dbrsRet.getRowSize()==0) return ;


         int iRow= dbrsRet.getRowSize();

         mStru = new menu[iRow];
         int i = 0;
         while (dbrsRet.moveNext()) {

         mStru[i] = new menu();
         mStru[i].setStrName((dbrsRet.fieldByIndex(2)));
         mStru[i].setStrID(dbrsRet.fieldByIndex(0));
         mStru[i].setStrGrade(dbrsRet.fieldByIndex(3));
         mStru[i].setStrParentId(dbrsRet.fieldByIndex(4));
         mStru[i].setStrLink("");
         mStru[i].setStrType(dbrsRet.fieldByIndex(1));
         i++;

       }
     }
     catch (Exception ex) {
       ex.printStackTrace();
     }


   }






    /**
     * 字符串处理,返回处理过后的字符串
     * @str  未处理的字符串
     * return String
     */
    private String convertStr(String str)
    {

        if(str==null)
            str="";
        return str;
    }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -