|
|
@ -4,6 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
|
|
|
|
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
|
|
|
|
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
|
|
|
|
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
|
|
|
|
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
|
|
|
|
import cn.estsh.i3plus.platform.common.tool.EncryptTool;
|
|
|
|
import cn.estsh.i3plus.platform.common.tool.EncryptTool;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.platform.common.tool.TimeTool;
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.ListPager;
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.ListPager;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.Pager;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.Pager;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
|
|
|
@ -18,6 +19,7 @@ import cn.estsh.impp.framework.boot.auth.AuthUtil;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
|
|
|
|
import org.apache.shiro.authc.AuthenticationException;
|
|
|
|
import org.apache.shiro.authc.AuthenticationToken;
|
|
|
|
import org.apache.shiro.authc.AuthenticationToken;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
@ -70,36 +72,42 @@ public class SysUserService implements ISysUserService {
|
|
|
|
private RefUserPositionRepository refUserPositionRDao;
|
|
|
|
private RefUserPositionRepository refUserPositionRDao;
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public SessionUser queryUserLogin(String loginName, String password, String languageCode) {
|
|
|
|
public SessionUser queryUserLogin(String loginName, String password, String languageCode) throws AuthenticationException {
|
|
|
|
LOGGER.debug("平台用户 SYS_USER loginName:{} \t password:{} \t languageCode:{}", loginName, password, languageCode);
|
|
|
|
LOGGER.debug("平台用户 SYS_USER loginName:{} \t password:{} \t languageCode:{}", loginName, password, languageCode);
|
|
|
|
|
|
|
|
|
|
|
|
SysUser user = getSysUserByLoginName(loginName);
|
|
|
|
// SysUser user = this.getSysUserByLoginName(loginName);
|
|
|
|
|
|
|
|
//
|
|
|
|
if(user == null){
|
|
|
|
// if(user == null){
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
// throw ImppExceptionBuilder.newInstance()
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
|
|
|
|
// .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
|
|
|
|
.setErrorCode(ImppExceptionEnum.LOGIN_USER_NAME_EXCEPTION.getCode())
|
|
|
|
// .setErrorCode(ImppExceptionEnum.LOGIN_USER_NAME_EXCEPTION.getCode())
|
|
|
|
.setErrorDetail("用户名不存在")
|
|
|
|
// .setErrorDetail("用户名不存在")
|
|
|
|
.setErrorSolution("请重新输入用户名")
|
|
|
|
// .setErrorSolution("请重新输入用户名")
|
|
|
|
.build();
|
|
|
|
// .build();
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
|
|
|
|
//
|
|
|
|
AuthenticationToken token = null;
|
|
|
|
// AuthenticationToken token = null;
|
|
|
|
switch (user.getUserTypeId()) {
|
|
|
|
// switch (user.getUserTypeId()) {
|
|
|
|
case 2:
|
|
|
|
// case 2:
|
|
|
|
token = new AdminToken(loginName, password, languageCode);
|
|
|
|
// token = new AdminToken(loginName, password, languageCode);
|
|
|
|
break;
|
|
|
|
// break;
|
|
|
|
case 3:
|
|
|
|
// case 3:
|
|
|
|
token = new SaAdminToken(loginName, password, languageCode);
|
|
|
|
// token = new SaAdminToken(loginName, password, languageCode);
|
|
|
|
break;
|
|
|
|
// break;
|
|
|
|
default:
|
|
|
|
// default:
|
|
|
|
token = new UserToken(loginName, password, languageCode);
|
|
|
|
// token = new UserToken(loginName, password, languageCode);
|
|
|
|
break;
|
|
|
|
// break;
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
|
|
|
|
// SessionUser sessionUser = AuthUtil.login(token);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UserToken token = new UserToken(loginName,password,languageCode);
|
|
|
|
|
|
|
|
System.out.println("=============" + token);
|
|
|
|
SessionUser sessionUser = AuthUtil.login(token);
|
|
|
|
SessionUser sessionUser = AuthUtil.login(token);
|
|
|
|
|
|
|
|
SysUser user = this.getSysUserByLoginName(loginName);
|
|
|
|
|
|
|
|
|
|
|
|
packSessionUser(sessionUser, user, user.getUserTypeId(), languageCode);
|
|
|
|
packSessionUser(sessionUser, user, user.getUserTypeId(), languageCode);
|
|
|
|
AuthUtil.setSessionUser(sessionUser);
|
|
|
|
AuthUtil.setSessionUser(sessionUser);
|
|
|
|
|
|
|
|
updateUserLoginLastDateTime(user.getId());
|
|
|
|
return sessionUser;
|
|
|
|
return sessionUser;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -107,7 +115,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
public void updateSysUserStatus(String id, int status, SessionUser user) {
|
|
|
|
public void updateSysUserStatus(String id, int status, SessionUser user) {
|
|
|
|
LOGGER.debug("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
|
|
|
|
LOGGER.debug("平台用户 SYS_USER id:{} status:{} modifyUser:{}", id, status, user.getUserName());
|
|
|
|
SysUser sysUser = sysUserRDao.getById(Long.parseLong(id));
|
|
|
|
SysUser sysUser = sysUserRDao.getById(Long.parseLong(id));
|
|
|
|
// sysUser.setUserStatusId(status);
|
|
|
|
sysUser.setUserStatus(status);
|
|
|
|
sysUser.setModifyUser(user.getUserName());
|
|
|
|
sysUser.setModifyUser(user.getUserName());
|
|
|
|
sysUserRDao.update(sysUser);
|
|
|
|
sysUserRDao.update(sysUser);
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -120,7 +128,7 @@ public class SysUserService implements ISysUserService {
|
|
|
|
List<SysUser> list = sysUserRDao.findByHqlWhere(where);
|
|
|
|
List<SysUser> list = sysUserRDao.findByHqlWhere(where);
|
|
|
|
if(null != list && list.size() > 0){
|
|
|
|
if(null != list && list.size() > 0){
|
|
|
|
for (SysUser sysUser : list) {
|
|
|
|
for (SysUser sysUser : list) {
|
|
|
|
// sysUser.setUserStatusId(status);
|
|
|
|
sysUser.setUserStatus(status);
|
|
|
|
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
|
|
sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
|
|
ConvertBean.modelUpdate(sysUser,user);
|
|
|
|
ConvertBean.modelUpdate(sysUser,user);
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -182,6 +190,18 @@ public class SysUserService implements ISysUserService {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void updateUserLoginLastDateTime(Long userId) {
|
|
|
|
|
|
|
|
SysUser user = sysUserRDao.getById(userId);
|
|
|
|
|
|
|
|
SysUserInfo userInfo = sysUserInfoRDao.getById(user.getUserInfoId());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
user.setUserLoginLastDateTime(TimeTool.getNowTime(true));
|
|
|
|
|
|
|
|
userInfo.setUserLoginLastDateTime(TimeTool.getNowTime(true));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sysUserInfoRDao.save(userInfo);
|
|
|
|
|
|
|
|
sysUserRDao.save(user);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public SysUser insertSysUser(SysUser sysUser)throws Exception {
|
|
|
|
public SysUser insertSysUser(SysUser sysUser)throws Exception {
|
|
|
|
LOGGER.debug("平台用户 SYS_USER SysUser:{}", sysUser);
|
|
|
|
LOGGER.debug("平台用户 SYS_USER SysUser:{}", sysUser);
|
|
|
|
|
|
|
|
|
|
|
|