userbizimpl.java

来自「主要实现管理客户以及客户信息和其公司的服务管理」· Java 代码 · 共 66 行

JAVA
66
字号
package biz.userinfo.impl;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Restrictions;

import biz.userinfo.IUserInfoBIZ;
import dao.userinfo.IUserInfoDAO;
import entity.UserInfo;

public class UserBIZImpl implements IUserInfoBIZ {
	private IUserInfoDAO udao = null;

	public IUserInfoDAO getUdao() {
		return udao;
	}

	public void setUdao(IUserInfoDAO udao) {
		this.udao = udao;
	}
	/* (non-Javadoc)
	 * @see biz.userinfo.impl.IUserInfoBIZ#login(entity.UserInfo)
	 */
	public UserInfo login(UserInfo user){
		UserInfo newuser = null;
		DetachedCriteria criteria = DetachedCriteria.forClass(UserInfo.class);
		criteria.add(Restrictions.eq("userName", user.getUserName()));
		criteria.add(Restrictions.eq("userPass", user.getUserPass()));
		//criteria.add(Restrictions.eq("userStatus", user.getUserStatus()));
		List list = udao.search(criteria);
		if(null!=list&&list.size()>0){
		 newuser = (UserInfo)list.get(0);
		 if(newuser.getUserStatus()==1){
		 newuser.setUserStatus(2);
		 udao.update(newuser);
		 }
		 else if(newuser.getUserStatus()==0){
			 throw new java.lang.IllegalArgumentException("用户已经锁定");
		 }
		 else if(newuser.getUserStatus()==2){
			 throw new java.lang.IllegalArgumentException("该用户已经登录,请退出再重新登录");
		 }
		}
		return newuser;
	}

	public List searchAllUserByCondition(UserInfo user) {
		// TODO Auto-generated method stub
		DetachedCriteria criteria=DetachedCriteria.forClass(UserInfo.class);
		if(null!=user&&null!=user.getUserStatus()){
			criteria.add(Restrictions.eq("userStatus", user.getUserStatus()));
		}
		if(null!=user&&null!=user.getRolestr()&&""!=user.getRolestr()){
			criteria.createAlias("role", "role").add(Restrictions.eq("role.roleName", user.getRolestr())).add(Restrictions.ne("userStatus", 0));
		}
		return udao.search(criteria);
	}

	public void updateUser(UserInfo user) {
		// TODO Auto-generated method stub
		udao.update(user);
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?