📄 powermanager.java
字号:
package boco.shabank.powermanager;import java.util.*;import java.sql.*;import boco.shabank.dbmanager.ChineseTransfer;import boco.shabank.dbconnection.*;public class PowerManager { //用户组向量 protected Vector vGrpId; protected Vector vGrpName; protected Vector vGrpPower; protected Vector vGrpDes; //用户向量 protected Vector vUsrId; protected Vector vUsrName; protected Vector vUsrPin; protected Vector vUsrMail; protected Vector vUsrPhone; protected Vector vUsrAddress; protected Vector vUsrDes; protected Vector vUsrGrpId; protected Vector vUsrSign; //权限块向量 protected Vector vPowerId; protected Vector vPowerPath; protected Vector vPowerName; protected Vector vPowerDes; protected String sql=""; ChineseTransfer ct = new ChineseTransfer(); DBConnectionManager objDBConnection; Connection m_Connection; ResultSet rs=null; DBAccess db; //ChineseTransfer ct = new ChineseTransfer(); public PowerManager() { //初始化用户组向量 vGrpId=new Vector(); vGrpName=new Vector(); vGrpPower=new Vector(); vGrpDes=new Vector(); //初始化用户向量 vUsrId=new Vector(); vUsrName=new Vector(); vUsrPin=new Vector(); vUsrMail=new Vector(); vUsrPhone=new Vector(); vUsrAddress=new Vector(); vUsrDes=new Vector(); vUsrGrpId=new Vector(); vUsrSign = new Vector(); //初始化权限块向量 vPowerId=new Vector(); vPowerPath=new Vector(); vPowerName=new Vector(); vPowerDes=new Vector(); vPowerId=new Vector(); //数据连接 //objDBConnection.getInstance(); //db=new DBAccess(); } //用户属性向量付值 public void getAllPowerUser(){ sql="select * from poweruser"; db=new DBAccess(); try{ objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,sql) ; //:test:System.out.println(sql); while(rs.next()){ vUsrId.addElement(rs.getString(1)) ; vUsrName.addElement(rs.getString(2)==null?rs.getString(2):ct.AsciiToChineseString(rs.getString(2))); vUsrPin.addElement(rs.getString(3)); vUsrMail.addElement(rs.getString(4)); vUsrPhone.addElement(rs.getString(5)==null?rs.getString(5):ct.AsciiToChineseString(rs.getString(5))); vUsrAddress.addElement(rs.getString(6)==null?rs.getString(6):ct.AsciiToChineseString(rs.getString(6))); vUsrDes.addElement(rs.getString(7)==null?rs.getString(7):ct.AsciiToChineseString(rs.getString(7))); vUsrGrpId.addElement(rs.getString(8)); vUsrSign.addElement(rs.getString(9)) ; } rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.print(e.getMessage()) ; } } //用户组属性向量付值 public void getAllPowerGroup(){ sql="select * from powergroup"; db=new DBAccess(); try{ objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,sql) ; //:test:System.out.println(sql); while(rs.next()){ vGrpId.addElement(rs.getString(1)) ; vGrpName.addElement(rs.getString(2)==null?rs.getString(2):ct.AsciiToChineseString(rs.getString(2))); vGrpPower.addElement(rs.getString(3)); vGrpDes.addElement(rs.getString(4)==null?rs.getString(4):ct.AsciiToChineseString(rs.getString(4))); } rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.print(e.getMessage()) ; } } //权限模块属性向量付值 public void getAllPowerMod(){ sql="select * from powermod"; db=new DBAccess(); try{ objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,sql) ; //:test:System.out.println(sql); while(rs.next()){ vPowerId.addElement(rs.getString(1)) ; vPowerPath.addElement(rs.getString(2)==null?rs.getString(2):ct.AsciiToChineseString(rs.getString(2))); vPowerName.addElement(rs.getString(3)==null?rs.getString(3):ct.AsciiToChineseString(rs.getString(3))); vPowerDes.addElement(rs.getString(4)==null?rs.getString(4):ct.AsciiToChineseString(rs.getString(4))); } rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.print(e.getMessage()) ; } } //取keyid(最小的不存在的数) public int getKeyId(String tableName,String key){ sql="select "+key+" from "+tableName; //System.out.println("sql1="+sql); Vector vKey = new Vector(); int keyvalue = 0; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; //取出最大的id,命名一个 int maxid=0; String sqlMaxId = "select max("+key+") from "+tableName; ResultSet res = db.executeQuery(m_Connection,sqlMaxId); if(res.next()) maxid = res.getInt(1) ; res.close() ; if(maxid>0){ for(int i=0;i<=maxid;i++) vKey.addElement("") ; //:test:System.out.println("sql1="+sql+ maxid+vKey.size()); rs = db.executeQuery(m_Connection,sql) ; while(rs.next()){ vKey.setElementAt(rs.getString(1),rs.getInt(1)); } rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; //System.out.println("size="+vKey.size()); for(int i=0;i<vKey.size();i++){ if(vKey.elementAt(i).toString().equals("")){ keyvalue=i; break; } else{ keyvalue=i+1; } } } else keyvalue = 1; } catch(Exception e){ System.out.print(e.getMessage()) ; } return keyvalue; } //插入用户组 public void insertPowerGroup(String groupName){ String initpower=""; for(int i=0;i<200;i++){ initpower= initpower+"0"; } int grpid = getKeyId("powergroup","grpid") ; String strGrpid = Integer.toString(grpid); String temp ="("+strGrpid+",'"+ct.ChineseStringToAscii(groupName)+"','"+initpower+"','')"; sql="insert into powergroup values "+ temp; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; db.executeUpdate(m_Connection,sql) ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.println(e.getMessage()) ; } } //修改用户组名称 public void updatePowerGroupGrpName(String newgrpName,String oldgrpName){ sql="update powergroup set grpname='"+ct.ChineseStringToAscii(newgrpName)+"' where grpname='"+ct.ChineseStringToAscii(oldgrpName)+"'"; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; db.executeUpdate(m_Connection,sql) ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.println(e.getMessage()) ; } } //删除用户组 public void delPowerGroup(String grpName){ sql="delete from powergroup where grpname='"+ct.ChineseStringToAscii(grpName)+"'"; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; db.executeUpdate(m_Connection,sql) ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.println(e.getMessage()) ; } } //取用户组序号 public String getGroupId(String groupname){ sql="select grpid from powergroup where grpname='"+ct.ChineseStringToAscii(groupname)+"'"; String groupid = ""; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,sql) ; if(rs.next()) groupid = rs.getString(1); rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.println(e.getMessage()) ; } return groupid; } //根据组名称取用户组权限编码 public Object[] getGroupPower(String groupname){ sql="select grppower from powergroup where grpname='"+ct.ChineseStringToAscii(groupname)+"'"; String grouppower = ""; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,sql) ; if(rs.next()) grouppower = rs.getString(1); rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.println(e.getMessage()) ; } Vector vPower=new Vector(); for(int i=0;i<grouppower.length();i++){ vPower.addElement(grouppower.substring(i,i+1)); } return vPower.toArray(); } //根据用户组ID取用户组权限编码 public Object[] getGroupPowerforGrpid(String grpid){ sql="select grppower from powergroup where grpid="+grpid; String grouppower = ""; try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,sql) ; if(rs.next()) grouppower = rs.getString(1); rs.close() ; objDBConnection.freeConnection("access",m_Connection) ; } catch(Exception e){ System.out.println(e.getMessage()) ; } Vector vPower=new Vector(); for(int i=0;i<grouppower.length();i++){ vPower.addElement(grouppower.substring(i,i+1)); } return vPower.toArray(); } //添加用户到组() public void addUserToGroup(String usrSign,String grpName){ String tmpsql = "select grpid from poweruser where usrsign='"+usrSign+"'"; String strGroup=""; String groupid=getGroupId(grpName); try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,tmpsql) ; if(rs.next()) strGroup = rs.getString(1); strGroup = strGroup + groupid+"@"; sql="update poweruser set grpid='"+strGroup+"' where usrsign='"+usrSign+"'"; db.executeUpdate(m_Connection,sql); objDBConnection.freeConnection("access",m_Connection); } catch(Exception e){ System.out.println(e.getMessage()) ; } } //从用户组中删除用户 public void delUserFromGroup(String usrSign,String grpName){ String tmpsql = "select grpid from poweruser where usrsign='"+usrSign+"'"; String strGroup=""; String groupid=getGroupId(grpName); try{ db=new DBAccess(); objDBConnection=objDBConnection.getInstance() ; m_Connection = objDBConnection.getConnection("access") ; rs = db.executeQuery(m_Connection,tmpsql) ; if(rs.next()) strGroup = rs.getString(1); strGroup = ct.delStr(strGroup,groupid); sql="update poweruser set grpid='"+strGroup+"' where usrsign='"+usrSign+"'"; db.executeUpdate(m_Connection,sql); objDBConnection.freeConnection("access",m_Connection); } catch(Exception e){ System.out.println(e.getMessage()) ; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -