📄 user.java
字号:
package com.corp.bisc.ebiz.member;
import java.sql.*;
import java.util.*;
import com.corp.bisc.ebiz.util.*;
import com.corp.bisc.ebiz.base.*;
import com.corp.bisc.ebiz.exception.*;
//import com.corp.bisc.ebiz.security.WebPrincipal;
import javax.naming.directory.*;
import javax.naming.*;
import java.io.*;
/**
* 网站用户Entity类,包含了对数据库、LDAP和DOMINO的支持。
* 创建日期:(2002-6-10 14:12:12)
* @author:pangwei
*/
public class User extends ObjectBase implements Serializable {
private String userID; //用户ID
private String name; //用户名
// protected int sex; //性别,0男,1女
// protected String phoneNumber; //电话号码
// protected String masterName; //主管名称
private String cmpType; //单位类型分为:00 Sony CN;01 Factory;02 Sony Own Shop;
private String cmpCode; //单位的编码,Dealer、Factory、DWS的公司代码
private String cmpName; //公司名称
private String deptCode; //部门的编码,该属性表示用户在Sony的部门代码。00 sales dept;01 marketing dept
private String deptName; //部门名称
// protected String displayCode; //单位的编码显示
private String mailAddress; //邮件地址
private int status; //用户状态:0创建;1生效;2冻结
private String password; //用户密码
private java.util.Date createDate; //创建日期
private java.util.Date validateDate; //生效日期
// protected int membercompany_needpki = 1; //会员公司是否需要PKI认证:0不需要;1需要
// public static String suffix = "ou=portaluser,o=sse,c=cn"; //部门后缀
// public static String mailsuffix = "@secure.sse.com.cn"; //邮件后缀
private Vector vtRight = null; //用户权限列表(存放权限UserRight的组合,用来判断用户是否具有权限)
// private Vector vectRight=null; //用户权限列表(存放rightid,用于用户管理,由于历史原因,与前者并存)
//用户状态
public static final int USER_STATUS_NEW = 0; //新建
public static final int USER_STATUS_EFFECTIVE = 1; //生效
public static final int USER_STATUS_FROZEN = 2; //冻结
//单位代码
public static final String CMP_SONY = "00";
public static final String CMP_FACTORY = "01";
public static final String CMP_DWS = "02";
//部门代码
public static final String DEPT_SALE = "01";
public static final String DEPT_MRKT = "00";
//网站缺省用户密码,应该放到一个配置文件中
public static String DEFAULT_PASS = "666666";
/**
* User 构造子注解。
*/
public User() {
super();
}
/**
* User 构造子注解。
*/
public User(Connection conn, ResultSet rs) throws Exception{
super();
userID = rs.getString("USERID");
name = rs.getString("NAME");
cmpType = rs.getString("CMPTYPE");
cmpCode = rs.getString("CMPCODE");
// cmpName = rs.getString("CMPNAME");
deptCode = rs.getString("DEPTCODE");
mailAddress = rs.getString("MAILaddress");
password = rs.getString("PASSWORD");
// createDate = rs.getDate("createDate");
// validateDate = rs.getDate("validationDate");
status = rs.getInt("STATUS");
//从数据库取出user的权限
loadRights(conn);
}
/**
* 验证用户密码。
* 创建日期:(2002-8-9 14:16:38)
* @param newPassword java.lang.String
* @param handler com.corp.bisc.ebiz.util.LDAPUtils
*/
public boolean checkPassword(String pwd) {
System.out.println("--------password="+password);
System.out.println("--------pwd="+pwd);
if (pwd == null) return false;
return pwd.equals(password);
}
/**
* 更新用户密码。
* 创建日期:(2002-8-9 14:16:38)
* @param newPassword java.lang.String
* @param handler com.corp.bisc.ebiz.util.LDAPUtils
*/
public boolean changePassword(Connection conn,String userid,String pwd) throws Exception{
System.out.println("User changePassword begin");
System.out.println("--------userid="+userid);
System.out.println("--------pwd="+pwd);
boolean result =false;
//
userid="'"+userid+"'";
password="'"+password+"'";
String sql="update s_user set "
+"password="+password
+" where USERID="+userid;
System.out.println("User changePassword sql="+sql);
Statement stat = conn.createStatement();
int upd_res=stat.executeUpdate(sql);
stat.close();
System.out.println("User changePassword upd_res="+upd_res);
if(upd_res==1)
result=true;
return result;
}
public java.lang.String getCmpCode() {
return cmpCode;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-9-25 11:58:52)
* @return java.lang.String
*/
public java.lang.String getCmpName() {
return cmpName;
}
public java.lang.String getCmpType() {
return cmpType;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-8-12 20:19:41)
* @return java.util.Date
*/
public java.util.Date getCreateDate() {
return createDate;
}
public java.lang.String getDeptCode() {
return deptCode;
}
public java.lang.String getDeptName() {
return deptName;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-6-10 16:47:53)
* @param userid java.lang.String
*/
public String getMailAddress() {
return mailAddress;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-6-10 16:47:53)
* @param userid java.lang.String
*/
public String getName() {
return name;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-8-9 13:31:56)
* @return java.lang.String
*/
public java.lang.String getPassword() {
return password;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-7-18 9:29:41)
* @return int
*/
public int getStatus() {
return status;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-6-10 16:47:53)
* @param userid java.lang.String
*/
public String getUserID() {
return userID;
}
/**
* Insert the method's description here.
* Creation date: (2003-3-20 11:26:23)
* @return java.util.Vector
*/
public java.util.Vector getVtRight() {
return vtRight;
}
/**
* 判断该用户是否有权限。
* 创建日期:(2002-6-11 15:55:46)
* @return boolean
* @param id java.lang.String
*/
public boolean hasRight(long id) {
for(int i=0;i<vtRight.size();i++){
UserRight ur = (UserRight)vtRight.elementAt(i);
if(ur.hasRight(id))
return true;
}
return false;
}
/**
* 判断该用户是否有权限。
* 创建日期:(2002-6-11 15:55:46)
* @return boolean
* @param id java.lang.String
*/
public boolean hasRight(String rightName) {
for(int i=0;i<vtRight.size();i++){
UserRight ur = (UserRight)vtRight.elementAt(i);
if(ur.hasRight(rightName))
return true;
}
return false;
}
/**
* 从数据库加载该用户的权限。
* @param conn java.sql.Connection
* @exception java.lang.Exception 异常说明。
*/
public void loadRights(Connection conn) throws Exception {
//获取权限,存放权限id,只包含和用户直接相关的权限id,如果id为权限组
//将来进行权限判断时会根据权限组进行判断
//该实现比较高效,但无法满足双机的情况
/* vectRight = null;
vectRight = new Vector();
String sql = "select funcid from S_USERPRINCIPAL where userid = '" + userID + "'";
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(sql);
while(rs.next()){
long funcid = rs.getLong(1);
Long funcInteger = new Long(funcid);
vectRight.add(funcInteger);
}
rs.close();
stat.close();
*/
vtRight = UserRightManager.getUserRights(this.getUserID(),conn);
}
/**
* 此处插入方法描述。
* 创建日期:(2002-8-12 20:19:41)
* @param newCreateDate java.util.Date
*/
public void setCreateDate(java.util.Date newCreateDate) {
createDate = newCreateDate;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-6-10 16:47:53)
* @param userid java.lang.String
*/
public void setMailAddress(String mail) {
mailAddress = mail;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-6-10 16:47:53)
* @param userid java.lang.String
*/
public void setName(String strName) {
name = strName;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-8-9 13:31:56)
* @param newPassword java.lang.String
*/
public void setPassword(java.lang.String newPassword) {
password = newPassword;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-7-18 9:29:41)
* @param newStatus int
*/
public void setStatus(int newStatus) {
status = newStatus;
}
/**
* 此处插入方法描述。
* 创建日期:(2002-6-10 16:47:53)
* @param userid java.lang.String
*/
public void setUserID(String userid) {
userID = userid;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -