Commit 38e338fb authored by xc's avatar xc

shiro限定并发登录人数

parent 5e9fb667
......@@ -72,7 +72,22 @@ public class KickoutSessionControlFilter extends AccessControlFilter{
HttpServletResponse httpServletResponse = (HttpServletResponse) response;
// 登录超时
Object object = SecurityUtils.getSubject().getPrincipal();
Integer userId = getUserId(object);
Integer userId = null;
try {
//客户端
User user = (User) object;
userId = user.getId();
} catch (Exception e) {
try {
//管理端
AccountInfo accountInfo = (AccountInfo) object;
userId = accountInfo.getId();
} catch (Exception en) {
//员工端
Staff staff = (Staff) object;
userId = staff.getId();
}
}
Long SessionTime = (Long)redisTemplate.opsForValue().get("shiroSessionTime:"+userId);
Long loginTime = new Date().getTime()-SessionTime;
Boolean loginOutTime = (new Date().getTime()-SessionTime) >= (EXPIRE_TIME * 1000);
......@@ -198,26 +213,6 @@ public class KickoutSessionControlFilter extends AccessControlFilter{
}
}
private Integer getUserId(Object object){
Integer userId = null;
try {
//客户端
User user = (User) object;
userId = user.getId();
} catch (Exception e) {
try {
//管理端
AccountInfo accountInfo = (AccountInfo) object;
userId = accountInfo.getId();
} catch (Exception en) {
//员工端
Staff staff = (Staff) object;
userId = staff.getId();
}
}
return userId;
}
private void setHeader(HttpServletRequest request, HttpServletResponse response) {
//跨域的header设置
response.setHeader("Access-control-Allow-Origin", request.getHeader("Origin"));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment