📄 myrightcfg.java
字号:
package com.dreamtel.rightCtrl.dataright;
import com.dreamtel.db.dbresult.DBResultset;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
import java.util.Vector;
import com.dreamtel.db.conn.*;
import com.dreamtel.global.ComFuns;
import java.util.*;
import com.dreamtel.rightCtrl.menuright.*;
/**
* Title:menuCfgnew
* Description:读写菜单配置文件(递归),不限制菜单级别
* Copyright: Copyright (c) 2004
* Company:dreamtel
* @author weij
* @modify: weij
* @date: 20040528
* @version 1.1
*/
public class myRightCfg
{
private String strPropName="menu.prop";//配置文件明
private dbConnect DBConn=null;//数据库链接
private DBResultset rs=null;//结果集
private menu[] mStru=null;//菜单结构数组
private menu[] mStru1=null;//菜单结构数组
private menu[] mStru2=null;//菜单结构数组
private menu[] mStru3=null;//菜单结构数组
private String defaultLink="/TaglibWebProject/no_link.jsp";//默认链接
private menu tmenu=new menu();//菜单树
private Vector vmenu;//所有的节点信息矢量集合
private String strFilePath="config\\\\menucfg.prop"; //配置文件路径,位于1000/config中
private StringBuffer retMenuscript_buffer=new StringBuffer();
private Vector searchtree=null;//查找的分支
private Vector vSQL=null;//返回的sql集合
private String conn_code=null;
public myRightCfg(String conn_code)
{
this.conn_code = conn_code;
}
public Vector getVmenu()
{
return this.vmenu;
}
public String LoadMyRightData(String operid, String cust_staff_id, String cust_staff_sel_id, String group)
{
//System.out.println("GGGGGoperid="+operid+", cust_staff_id="+cust_staff_id+", group="+group);
String sqlpro="EXEC PR_RECREATE_MYDATATREE";
dbConnect dbconn= new dbConnect(conn_code);
try {
dbconn.runProc(sqlpro, null);
}
catch (Exception ex) {
ex.printStackTrace();
}
if(group.equalsIgnoreCase("GROUP" ))
{
if (operid.equalsIgnoreCase("9")) {
int ret = this.ReadMyRightData(operid, cust_staff_id, cust_staff_sel_id, group);
if (ret == 1) {
tmenu.setStrName("超级系统管理员组无数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
}
else {
vmenu = new Vector();
if (mStru == null || mStru.length == 0) {
tmenu.setStrName("超级系统管理员组无数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
return retMenuscript_buffer.toString();
}
for (int i = 0; i < mStru.length; i++) {
if (mStru[i].getStrLink() == null ||
mStru[i].getStrLink().equals(""))
mStru[i].setStrLink(defaultLink);
vmenu.add(mStru[i]);
}
String strtmp = "超级系统管理员";
tmenu.setStrName(strtmp); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font size='2.5pt'>" + //根节点的SCRIPT
tmenu.getStrName() + "</font>\", \"\")\n");
//System.out.println("初始化树");
initMenu(tmenu, "0", vmenu); //初始化菜单树
viewMenuAll(tmenu.sub); //遍历菜单树,生成返回的脚本
// viewMenuAllnew();
}
}
else if (operid.equalsIgnoreCase("1")) {
int ret = this.ReadMyRightData(operid, cust_staff_id, cust_staff_sel_id,group);
if (ret == 1) {
tmenu.setStrName("系统管理员组无数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
}
else {
vmenu = new Vector();
if (mStru == null || mStru.length == 0) {
tmenu.setStrName("系统管理员组无数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
return retMenuscript_buffer.toString();
}
for (int i = 0; i < mStru.length; i++) {
if (mStru[i].getStrLink() == null ||
mStru[i].getStrLink().equals(""))
mStru[i].setStrLink(defaultLink);
vmenu.add(mStru[i]);
}
String strtmp = "系统管理员";
tmenu.setStrName(strtmp); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font size='2.5pt'>" + //根节点的SCRIPT
tmenu.getStrName() + "</font>\", \"\")\n");
//System.out.println("初始化树");
initMenu(tmenu, "0", vmenu); //初始化菜单树
viewMenuAll(tmenu.sub); //遍历菜单树,生成返回的脚本
// viewMenuAllnew();
}
}
else //非管理员组
{
int ret = this.ReadMyRightData(operid, cust_staff_id, cust_staff_sel_id,group);
if (ret == 1) {
tmenu.setStrName("员工组无数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
}
else {
vmenu = new Vector();
if (mStru == null || mStru.length == 0) {
tmenu.setStrName("员工组无数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
return retMenuscript_buffer.toString();
}
for (int i = 0; i < mStru.length; i++) {
if (mStru[i].getStrLink() == null ||
mStru[i].getStrLink().equals(""))
mStru[i].setStrLink(defaultLink);
vmenu.add(mStru[i]);
}
String strtmp = "员工组";
tmenu.setStrName(strtmp); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font size='2.5pt'>" + //根节点的SCRIPT
tmenu.getStrName() + "</font>\", \"\")\n");
//System.out.println("初始化树");
initMenu(tmenu, "0", vmenu); //初始化菜单树
viewMenuAll(tmenu.sub); //遍历菜单树,生成返回的脚本
// viewMenuAllnew();
}
}
} //not group
else
{
// long t1 = ComFuns.getDoTime();
int ret = this.ReadMyRightData(operid, cust_staff_id, cust_staff_sel_id, group);
// long t2 = ComFuns.getDoTime();
// System.out.println("ReadMyRightData:" + (t2 - t1));
if (ret == 1) {
tmenu.setStrName("员工" + cust_staff_id + "没有你拥有的数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
}
else {
vmenu = new Vector();
if (mStru == null || mStru.length == 0) {
tmenu.setStrName("员工" + cust_staff_id + "没有你拥有的数据权限"); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font color='red' size='2.5pt'>"); //根节点的SCRIPT
retMenuscript_buffer.append(tmenu.getStrName());
retMenuscript_buffer.append("</font>\", \"\")\n");
return retMenuscript_buffer.toString();
}
for (int i = 0; i < mStru.length; i++) {
if (mStru[i].getStrLink() == null ||
mStru[i].getStrLink().equals(""))
mStru[i].setStrLink(defaultLink);
vmenu.add(mStru[i]);
}
String strtmp = "员工" + cust_staff_id + "数据权限列表";
tmenu.setStrName(strtmp); //初始化根
retMenuscript_buffer.append(
"foldersTree = gFld(\"<font size='2.5pt'>" + //根节点的SCRIPT
tmenu.getStrName() + "</font>\", \"\")\n");
//System.out.println("初始化树");
initMenu(tmenu, "0", vmenu); //初始化菜单树
viewMenuAll(tmenu.sub); //遍历菜单树,生成返回的脚本
// viewMenuAllnew();
}
}
return retMenuscript_buffer.toString();
}
public int ReadMyRightData(String operid, String cust_staff_id, String cust_staff_sel_id, String group)
{
int ret = 0;
dbConnect dbconn0 = new dbConnect(conn_code);
String table_name = "MYDATA_RIGHTITEM";
DBResultset dbrsRet = null;
String sql = "";
int i=0;
String tmpstr="";
if(group.equalsIgnoreCase("GROUP"))
{
if(operid.equalsIgnoreCase("9"))
{
tmpstr = "99";
/*
sql="SELECT DISTINCT INTID,INTKEY,STRNAME, GRADE, PARENT_ID "+
"FROM MYDATA_RIGHTITEM " +
"WHERE (SELECT COUNT(INTKEY) FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"+tmpstr+"') =( "+
"SELECT COUNT( DISTINCT CUST_STAFF_ID) FROM MYDATA_RIGHTITEM WHERE "+
"CUST_STAFF_ID IN (SELECT INTKEY FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"+tmpstr+"') ) "+
"AND CUST_STAFF_ID IN (SELECT INTKEY FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"+tmpstr+"') ORDER BY INTID ";
*/
sql="SELECT DISTINCT INTID,INTKEY,STRNAME, GRADE, PARENT_ID "+
"FROM MYDATA_RIGHTITEM " +
"WHERE CUST_STAFF_ID IN(SELECT INTKEY FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"
+tmpstr+"') ORDER BY INTID";
}
else if(operid.equalsIgnoreCase("1"))
{
tmpstr = "11";
/*
sql="SELECT DISTINCT INTID,INTKEY,STRNAME, GRADE, PARENT_ID "+
"FROM MYDATA_RIGHTITEM " +
"WHERE (SELECT COUNT(INTKEY) FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"+tmpstr+"') =( "+
"SELECT COUNT( DISTINCT CUST_STAFF_ID) FROM MYDATA_RIGHTITEM WHERE "+
"CUST_STAFF_ID IN (SELECT INTKEY FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"+tmpstr+"') ) "+
"AND CUST_STAFF_ID IN (SELECT INTKEY FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"+tmpstr+"') ORDER BY INTID ";
}*/
sql="SELECT DISTINCT INTID,INTKEY,STRNAME, GRADE, PARENT_ID "+
"FROM MYDATA_RIGHTITEM " +
"WHERE CUST_STAFF_ID IN(SELECT INTKEY FROM ALL_STAFF_RIGHTITEM WHERE STRMEM='"
+tmpstr+"') ORDER BY INTID";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -