From 03c38da7555b69cb598e534c97fa25bd5385701c Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期二, 29 十月 2024 17:55:50 +0800
Subject: [PATCH] 表单定义权限控制和属性权限&&成员管理添加密级&&首页修改密码&&登录判断过期停用修改密码后跳转首页
---
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/LoginServiceImpl.java | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/LoginServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/LoginServiceImpl.java
index fbe28cb..bb4ab4f 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/LoginServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/LoginServiceImpl.java
@@ -19,6 +19,7 @@
import com.vci.starter.web.annotation.bus.VciLoginAfter;
import com.vci.starter.web.annotation.bus.VciLogoutBefore;
import com.vci.starter.web.annotation.bus.VciLogoutPlugin;
+import com.vci.starter.web.constant.VConstant;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.interceptor.VciSessionForLoginI;
import com.vci.starter.web.pagemodel.RequestClientInfo;
@@ -30,7 +31,7 @@
import com.vci.constant.CacheNameConstant;
import com.vci.dto.LoginUserDTO;
import com.vci.web.properties.WebProperties;
-import com.vci.web.redis.RedisService;
+import com.vci.starter.web.redis.RedisService;
import com.vci.web.service.LoginServiceI;
import com.vci.web.util.Func;
import com.vci.web.util.PlatformClientUtil;
@@ -146,7 +147,7 @@
* @return 鎵ц缁撴灉
* @throws VciBaseException 鍙傛暟閿欒锛岀敤鎴蜂笉鑳界櫥褰曠瓑浼氭姏鍑哄紓甯�
*/
- private LoginResultBO login(LoginUserDTO userDTO, RequestClientInfo clientInfo, boolean checkPassword/*鍗曠偣鐧诲綍涓嶉渶瑕佹牎楠屽瘑鐮�*/) throws VciBaseException, PLException {
+ private LoginResultBO login(LoginUserDTO userDTO, RequestClientInfo clientInfo, boolean checkPassword/*鍗曠偣鐧诲綍涓嶉渶瑕佹牎楠屽瘑鐮�*/) throws VciBaseException {
LoginResultBO loginResult = new LoginResultBO();
loginResult.setSuccess(false);
@@ -167,6 +168,7 @@
String tokenKey = redisService.getCacheObject(userIdTokenKey);
redisService.deleteObject(tokenKey);
redisService.deleteObject(userIdTokenKey);
+ redisService.decreOnlineUser(VConstant.CURRENT_LOGGED_USERS_KEY);
}
//3.鑾峰彇鐢ㄦ埛鐨勫璞★紙瀵硅薄涓寘鍚鑹查儴闂ㄨ繕鏈夊瘑鐮佺瓥鐣ヤ俊鎭�(褰撳墠鐢ㄦ埛娌¤缃瘑鐮佺瓥鐣ュ氨鏄彇鐨勯粯璁ゅ瘑鐮佺瓥鐣�)锛�
@@ -242,6 +244,8 @@
sessionInfo.setToken(token);
//鍒濆鍖栧钩鍙扮殑token
sessionForLogin.initInvocationInfo(sessionInfo);
+ //璁板綍褰撳墠鐧诲綍浜烘暟鐨勬�绘暟
+ redisService.increOnlineUser(VConstant.CURRENT_LOGGED_USERS_KEY);
//鎷疯礉鐢ㄦ埛鍒版柊鐨剆ession浼氳瘽涓�
copyUser2SessionInfo(user, sessionInfo, userDTO.getLangCode());
//鎷疯礉璇锋眰淇℃伅鍒皊ession浼氳瘽涓�
@@ -558,6 +562,8 @@
}
});
}
+ //娓呴櫎瀛樺綋鍓嶇櫥褰曠殑鐢ㄦ埛锛堟�绘暟-1锛�
+ redisService.decreOnlineUser(VConstant.CURRENT_LOGGED_USERS_KEY);
sessionForLogin.logout(userToken);
if(!CollectionUtils.isEmpty(logoutpluginBeanMap)){
logoutpluginBeanMap.forEach((k,v) -> {
--
Gitblit v1.9.3