添加序列化ID , 用户登录在线机制完成

yun-zuoyi
wei.peng 6 years ago
parent 6c46e9d9a1
commit 669dd8296c

@ -247,7 +247,7 @@ public interface ISysUserService {
* @return
*/
@ApiOperation(value = "封装用户信息",notes = "封装登录完成后的用户信息(角色、权限、部门、组织、岗位)")
SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode);
SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType,Integer loginPlatform, String languageCode);
/**
* id

@ -132,8 +132,6 @@ public class WhiteController extends CoreBaseController {
LOGGER.info("会员登陆:{}",user);
// Session 信息分装
AuthUtil.setSessionObject(CommonConstWords.SESSION_LOGIN_LANGUAGE_CODE,languageCode);
AuthUtil.setSessionObject(CommonConstWords.SESSION_LOGIN_PLATFORM, getLoginPlatform().getValue());
result = new ResultBean(true, AuthUtil.getSession().getId().toString(), AuthUtil.getSessionUser());
result.setUrl("/");

@ -69,7 +69,6 @@ public class SystemLoginService implements ISystemLoginService {
SysUser user = getUserLoginInfo(userToken.getLoginName(),userToken.getLoginPwd());
LOGGER.info("【验证用户checkUserLogin】{}",user);
//用户单地登录
AuthUtil.checkLoginOnly(userToken);
return packSessionUser(user,CommonEnumUtil.USER_TYPE.USER.getCode(),userToken.getLanguageCode());
}
@ -161,10 +160,8 @@ public class SystemLoginService implements ISystemLoginService {
private SessionUser packSessionUser(SysUser user,String userType, String languageCode) {
SessionUser sessionUser = new SessionUser();
sessionUser.setLanguageCode(languageCode);
// sessionUser.setSiteCode(user.getFactoryCode());
sessionUser.setUserName(user.getUserName());
sessionUser.setUserType(userType);
// sessionUser.setUserCode(user.getUserInfo().getLanguageCode());
return sessionUser;
}

@ -9,7 +9,6 @@ import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.EncryptTool;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -27,6 +26,7 @@ import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ImppRedis;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authc.AuthenticationException;
@ -39,6 +39,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
@ -103,6 +104,12 @@ public class SysUserService implements ISysUserService {
@Autowired
private IPersonnelService personnelService;
/**
*
*/
@Resource(name="redisSession")
private ImppRedis redisSession;
@Override
@ApiOperation(value = "用户登录", notes = "用户登录功能实现")
@Transactional(propagation = Propagation.REQUIRED)
@ -116,9 +123,10 @@ public class SysUserService implements ISysUserService {
if(user == null){
throw new CredentialsException("用户不存在");
}
packSessionUser(sessionUser, user, user.getUserType(), languageCode);
packSessionUser(sessionUser, user, user.getUserType(),loginPlatform, languageCode);
AuthUtil.setSessionUser(sessionUser);
refreshUserLoginInformation(user.getId());
AuthUtil.refreshOnline(sessionUser);
return sessionUser;
}
@ -559,7 +567,7 @@ public class SysUserService implements ISysUserService {
*/
@Override
@ApiOperation(value = "封装用户信息",notes = "封装登录完成后的用户信息(角色、权限、部门、组织、岗位)")
public SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode) {
public SessionUser packSessionUser(SessionUser sessionUser, SysUser user,Integer userType,Integer loginPlatform, String languageCode) {
LOGGER.debug("平台用户 SYS_USER user id :{}", user.getId());
SysUserInfo userInfo = sysUserInfoRDao.getById(user.getUserInfoId());
@ -581,11 +589,13 @@ public class SysUserService implements ISysUserService {
// userInfo.setUser(user);
sessionUser.setUserName(userInfo.getName());
sessionUser.setUserCode(userInfo.getUserEmpNo());
sessionUser.setUserId(userInfo.getId());
sessionUser.setUserInfo(userInfo);
// sessionUser.setUserType(CommonEnumUtil.USER_TYPE.valueOf(userType));
sessionUser.setUserId(user.getId());
sessionUser.setLanguageCode(languageCode);
sessionUser.setLoginPlatform(loginPlatform);
sessionUser.setToken(AuthUtil.getSession().getId().toString());
sessionUser.setUser(user);
return sessionUser;

Loading…
Cancel
Save