📄 loginconfig.java
字号:
/**
*Description:登录处理
*Author:肖建军
*Copyright版权所有
*/
package com.sunrise.chnl.obj;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.util.Properties;
import java.util.Vector;
import java.util.Hashtable;
import java.util.Date;
import java.util.Enumeration;
import org.w3c.dom.Document;
import com.sunrise.chnl.obj.ReadXml;
// Referenced classes of package testlogin:
// Structure
public class LoginConfig
{
public String s_emp_id; //员工工号
public String s_emp_name; //员工姓名
public String s_role_ind; //员工角色
public String s_srvc_hall;//服务厅编码
public String s_area_cd; //区域编码
private static Hashtable htb = new Hashtable();
public LoginConfig(){
}
/**
* @param pConn:数据库连接事务
* @param p_prop:参数对象
* @return 登录结果
*/
public String checkUser(Connection pConn, Properties p_param){
String s_ret = "0";
s_emp_id = p_param.get("emp_id").toString();
String s_login_pwd = p_param.get("emp_passwd").toString();
try{
int i_cnt = 0;
String s_pwd = "";
String s_sql = "SELECT a.EMP_NAM,a.ROLE_IND,a.EMP_PASSWD,a.SRVC_HALL_CD,b.AREA_CD";
s_sql += " FROM TC_EMP_INF a LEFT JOIN TC_SRVC_HALL AS b ON b.SRVC_HALL_CD=a.SRVC_HALL_CD";
s_sql += " WHERE a.EMP_ID = '"+s_emp_id+"'";
Statement stmt=pConn.createStatement();
ResultSet rsst=stmt.executeQuery(s_sql);
while(rsst.next()){
s_emp_name = rsst.getString(1)==null?"":rsst.getString(1).trim();
s_role_ind = rsst.getString(2)==null?"1":rsst.getString(2).trim();
s_pwd = rsst.getString(3)==null?"":rsst.getString(3).trim();
s_srvc_hall = rsst.getString(4)==null?"":rsst.getString(4).trim();
s_area_cd = rsst.getString(5)==null?"":rsst.getString(5).trim();
i_cnt++;
}
if(i_cnt==0) return "1";
if(!s_login_pwd.trim().equals(s_pwd)) return "2";
if(s_area_cd.length()==0) return "3";
if(s_srvc_hall.length()==0) return "4";
return "0";
}catch(Exception sqlexception){return "-1";}
}
/**
* @param p_id:登录人工号
* @param p_name:登录人姓名
* @param p_host_addr:主机地址
* @param p_host_name:主机名称
*/
public void regeditUser(String p_id, String p_name, String p_host_addr){
if(htb != null){
synchronized(htb){
Vector v_login = (Vector)htb.get(p_id + p_host_addr);
if(v_login != null && v_login.size() > 0) return;
v_login = new Vector();
v_login.addElement(p_id);
v_login.addElement(p_name);
v_login.addElement(p_host_addr);
v_login.addElement("登录进站");
v_login.addElement(new Date());
v_login.addElement(new Date());
htb.put(p_id + p_host_addr, v_login);
}
return;
}
else{
return;
}
}
private long getDelayTime(){
try{
ReadXml read_xml = new ReadXml();
Document documnet = read_xml.getDocument(PublicBean.getConfigFile());
String s_delay_time = read_xml.getConfig(documnet,"login","delay");
long l_delay_time = Long.valueOf(s_delay_time).longValue()*1000;
return l_delay_time;
}catch(Exception e){
return 60000;
}
}
public boolean islogin(String p_id, String p_host_addr){
if(htb != null){
synchronized(htb){
Vector v_login = (Vector)htb.get(p_id + p_host_addr);
if(v_login != null && v_login.size() > 0){
Date d_curr = new Date();
Date d_last = (Date)v_login.elementAt(5);
if(d_curr.getTime() - d_last.getTime() > getDelayTime()){
htb.remove(p_id + p_host_addr);
return false;
}
return true;
}
}
return false;
}
return false;
}
public Vector getLoginUser(){
if(htb != null){
Vector v_list = new Vector();
Date d_curr = new Date();
synchronized(htb){
for(Enumeration enumeration = htb.keys(); enumeration.hasMoreElements();){
String s_login = (String)enumeration.nextElement();
Vector v_login = (Vector)htb.get(s_login);
if(s_login != null){
Date d_last = (Date)v_login.elementAt(5);
if(d_curr.getTime() - d_last.getTime() > getDelayTime()){
htb.remove(s_login);
}
else{
v_list.addElement(v_login);
}
}
}
}
return v_list;
}
return null;
}
public int setStatus(String p_id, String p_statu, String p_host_addr){
if(htb != null){
synchronized(htb){
Vector v_login = (Vector)htb.get(p_id + p_host_addr);
if(v_login == null || v_login.size() == 0){
return -1;
}
Vector v_temp = new Vector();
v_temp.addElement(v_login.elementAt(0));
v_temp.addElement(v_login.elementAt(1));
v_temp.addElement(v_login.elementAt(2));
v_temp.addElement(p_statu);
v_temp.addElement(v_login.elementAt(4));
v_temp.addElement(new Date());
htb.remove(p_id + p_host_addr);
htb.put(p_id + p_host_addr, v_temp);
return 0;
}
}
return -2;
}
public int refresh(String p_id, String p_host_addr){
if(htb != null){
synchronized (htb) {
Vector v_login = (Vector) htb.get(p_id + p_host_addr);
if (v_login == null || v_login.size() == 0) {
return -1;
}
Vector v_temp = new Vector();
v_temp.addElement(v_login.elementAt(0));
v_temp.addElement(v_login.elementAt(1));
v_temp.addElement(v_login.elementAt(2));
v_temp.addElement(v_login.elementAt(3));
v_temp.addElement(v_login.elementAt(4));
v_temp.addElement(new Date());
htb.remove(p_id + p_host_addr);
htb.put(p_id + p_host_addr, v_temp);
return 0;
}
}
return -2;
}
public void logout(String p_id, String p_host_addr){
if (htb != null) {
synchronized (htb) {
Vector v_login = (Vector) htb.get(p_id + p_host_addr);
if (v_login == null || v_login.size() == 0){
return;
}
htb.remove(p_id + p_host_addr);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -