📄 usermanager.java
字号:
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: hasSameId() error:"+e.getMessage()+" sql:"+sql);
return true;
}
return false;
}
/**
*判断是否有这个站点
*调用者:
*@param url 网站地址
@return boolean 站点域名是否相重
*/
public boolean hasSite(String url){
try{
sql="select domainId from site where domain=\""+url+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.last() && rs.getRow()>0){
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
return true;
}
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: hasSite() error:"+e.getMessage()+" sql:"+sql);
return true;
}
return false;
}
/**
*获取客户端用户的状态
*调用者:msgManager.jsp
*@param id 客户端id
*/
public String getUserState(String id){
String state=null;
try{
sql="select state from user where id=\""+id+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.next()){
state=rs.getString("state");
}
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: getUserState() error:"+e.getMessage()+" sql:"+sql);
return null;
}
return state;
}
/**
*获取访问者的状态
*调用者:webTalk.jsp,msgManager.jsp
*@param id 访问者id
*@return String 访问者的状态(ONLINE OFFLINE TALKING NULL)如果返回null表明还没有这个访问者
*/
public String getVisitorState(String id){
String state=null;
try{
sql="select state from visitor where id=\""+id+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.next()){
state=rs.getString("state");
}
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: getUserState() error:"+e.getMessage()+" sql:"+sql);
return null;
}
return state;
}
/**
*获取客户端用户的工作电话(访问者voip电话呼入对象)
*调用者:
*@param id 客户端id
*@return String 客户端用户的工作电话
*/
public String getWorkPhone(String id){
String workphone=null;
try{
sql="select workphone from user where id=\""+id+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.next()){
workphone=rs.getString("workphone");
}
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: getWorkPhone() error:"+e.getMessage()+" sql:"+sql);
return null;
}
return workphone;
}
/**
*获取访问者的状态
*/
/**
public String getViewerState(String id){
String state=null;
try{
sql="select state from visitor where id=\""+id+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.next()){
state=rs.getString("state");
}
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: getViewerState() error:"+e.getMessage()+" sql:"+sql);
return null;
}
return state;
}
**/
/**
*在数据库中添加一个新的访问者(如果表site中已经注册该站点才会添加用户)
*调用者:webTalk.jsp
*@param vid 访问者的id(由webTalk.jsp产生)
*@param type 访问者类型(visitor)
*@param name 访问者姓名(为空)
*@param talker 与客户端对话者的名称(为空)
*@param sex 访问者性别(为空)
*@param workphone 访问者工作电话(为空)
*@param mobilephone 访问者的移动电话号码(为空)
*@param email 访问者email(为空)
*@param qq 访问者qq(为空)
*@param msn 访问者msn(为空)
*@param address 访问者住址(为空)
*@param curURL 访问者所在的网站地址
*@param remoteIP 访问者ip
*@param frmurl 访问者来自网站
*@param state 访问者状态(ONLINE)
*@return boolean 返回是否添加成功
*/
public boolean addNewVisitor(String vid,String type,String name,String talker,String sex,String workphone,String mobilephone,
String email,String qq,String msn,String address,String curURL,String remoteIP,String frmurl,
String state){
try{
String domainId=null;
sql="select domainId from site where domain=\""+curURL+"\"";
//Log.log(sql);
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.next())
domainId=rs.getString("domainId");
if(domainId==null)
return false;
Calendar now= Calendar.getInstance();
String nowStr=String.valueOf(now.get(Calendar.YEAR))+"-"+String.valueOf(now.get(Calendar.MONTH)+1)+"-"+
String.valueOf(now.get(Calendar.DAY_OF_MONTH))+" "+String.valueOf(now.get(Calendar.HOUR_OF_DAY))+":"+
String.valueOf(now.get(Calendar.MINUTE))+":"+String.valueOf(now.get(Calendar.SECOND));
sql="insert into visitor values(\""+vid+"\",\"\",\""+type+"\",\""+name+"\",\"\",\"\",\""+talker+"\",\""+domainId+
"\",\""+sex+"\",\""+workphone+"\",\""+mobilephone+"\",\"\",\""+email+"\",\""+
qq+"\",\""+msn+"\",\""+address+"\",\""+remoteIP+"\",\""+nowStr+"\",\""+state+"\",\""+
Keyword.getCleanURL(frmurl)+"\",\""+nowStr+"\",\"false\",\"false\",\"false\",\"false\")";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
db.executeUpdate();
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: addNewVisitor() error:"+e.getMessage()+" sql:"+sql);
return false;
}
return true;
}
/**
*在数据库中添加一个新的客户端,如果表site中已经注册该站点才会添加用户
*调用者:regSave.jsp(在注册站点成功后用来添加管理员账号)
*@param vid 客户端用户id(由regSave.jsp产生如:admin@dns118_com)
*@param password 客户端用户密码
*@param type 客户端用户类型(如:业务,销售)
*@param name 客户端用户姓名
*@param talker 与客户端对话者的名称(为空)
*@param sex 客户端用户性别
*@param workphone 客户端用户工作电话
*@param mobilephone 客户端用户的移动电话号码
*@param email 客户端用户email
*@param qq 客户端用户qq
*@param msn 客户端用户msn
*@param address 客户端用户住址
*@param curURL 客户端用户所在的网站地址
*@param remoteIP 客户端用户ip
*@param frmurl 客户端用户来自网站
*@param state 客户端用户状态
*@return boolean 返回是否添加成功
*/
public boolean addNewUser(String vid,String password,String type,String name,String talker,String sex,String workphone,String mobilephone,
String email,String qq,String msn,String address,String curURL,String remoteIP,String frmurl,
String state){
try{
String domainId=null;
sql="select domainId from site where domain=\""+curURL+"\"";
//Log.log(sql);
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
rs=db.getResult();
if(rs!=null && rs.next())
domainId=rs.getString("domainId");
if(domainId==null)
return false;
Calendar now= Calendar.getInstance();
String nowStr=String.valueOf(now.get(Calendar.YEAR))+"-"+String.valueOf(now.get(Calendar.MONTH)+1)+"-"+
String.valueOf(now.get(Calendar.DAY_OF_MONTH))+" "+String.valueOf(now.get(Calendar.HOUR_OF_DAY))+":"+
String.valueOf(now.get(Calendar.MINUTE))+":"+String.valueOf(now.get(Calendar.SECOND));
sql="insert into user values(\""+vid+"\",\""+password+"\",\""+type+"\",\""+name+"\",\"\",\"\",\""+talker+"\",\""+domainId+
"\",\""+sex+"\",\""+workphone+"\",\""+mobilephone+"\",\"\",\""+email+"\",\""+
qq+"\",\""+msn+"\",\""+address+"\",\""+remoteIP+"\",\""+nowStr+"\",\""+state+"\",\""+
Keyword.getCleanURL(frmurl)+"\",\""+nowStr+"\",\"false\",\"false\",\"false\",\"false\")";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
db.executeUpdate();
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: addNewUser() error:"+e.getMessage()+" sql:"+sql);
return false;
}
return true;
}
/**
*更新客户端的状态
*调用者:client.jsp msgManager.jsp
*@param vid 客户端id
*@param state 客户端状态
*/
public void changeUserState(String vid,String state){
try{
sql="update user set state=\""+state+"\" where id=\""+vid+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
db.executeUpdate();
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method:changeUserState() error:"+e.getMessage()+" sql:"+sql);
}
}
/**
*更新访问者的状态
*调用者:webTalk.jsp webTalkWindow.jsp msgManager.jsp
*@param vid 访问者id
*@param state 访问者状态
*/
public void changeVisitorState(String vid,String state){
try{
sql="update visitor set state=\""+state+"\" where id=\""+vid+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
db.executeUpdate();
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: changeVisitorState() error:"+e.getMessage()+" sql:"+sql);
}
}
/**
*更新访问者的对话方id
*调用者:webTalkWindow.jsp
*@param vid 访问者id
*@param name 客户端名称
*/
public void setTalker(String vid,String name){
try{
sql="update visitor set talker=\""+name+"\" where id=\""+vid+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
db.executeUpdate();
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: setTalker() error:"+e.getMessage()+" sql:"+sql);
}
}
/**
*更新客户端最新访问时间
*@param vid 客户端id
*/
public void changeUserLastTime(String vid){
try{
Calendar now= Calendar.getInstance();
String nowStr=String.valueOf(now.get(Calendar.YEAR))+"-"+String.valueOf(now.get(Calendar.MONTH)+1)+"-"+
String.valueOf(now.get(Calendar.DAY_OF_MONTH))+" "+String.valueOf(now.get(Calendar.HOUR_OF_DAY))+":"+
String.valueOf(now.get(Calendar.MINUTE))+":"+String.valueOf(now.get(Calendar.SECOND));
sql="update user set lastTime=\""+nowStr+"\" where id=\""+vid+"\"";
if(db==null) db=new msg.DbConn();if(db.getConnection()==null || db.isClosed())
db.setConnection();
db.setSqlQuery(sql);
db.executeUpdate();
if(db.getConnection()!=null && !db.isClosed())
db.closeConnection();
}catch(Exception e){
closeDbConnection();
Log.log("Class:UserManager method: changeUserLastTime() error:"+e.getMessage()+" sql:"+sql);
}
}
/**
*更新访问者最新访问时间
*调用者:webTalk.jsp msgManager.jsp
*@param vid 访问者id
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -