Explorar el Código

提交登录接口开发接口

chenxiaofei hace 15 horas
padre
commit
da9d8d3fa7

+ 1 - 3
sckw-auth/src/main/java/com/sckw/auth/service/impl/AuthServiceImpl.java

@@ -485,14 +485,12 @@ public class AuthServiceImpl implements IAuthService {
         String clientType = loginBase.getClientType();
         Integer systemType = loginBase.getSystemType();
         String deviceId = loginBase.getDeviceId();
-        Long timestamp = System.currentTimeMillis();
         Map<String, Object> info = new HashMap<>(Global.NUMERICAL_SIXTEEN);
         info.put("userId", userId);
         info.put("account", account);
         info.put("clientType", clientType);
         info.put("systemType", systemType);
         info.put("deviceId", deviceId);
-        info.put("timestamp", timestamp);
         info.put("type", "refresh");
         String key = Global.getFullRefreshTokenKey(clientType, userId, deviceId);
         String refreshToken = EncryUtil.encryV1(Global.PRI_KEY, JSON.toJSONString(info));
@@ -527,7 +525,7 @@ public class AuthServiceImpl implements IAuthService {
         
         // 根据系统类型处理刷新逻辑
         Integer tokenSystemType = Integer.valueOf(tokenInfoMap.get("systemType").toString());
-        if (tokenSystemType == SystemTypeEnum.DRIVER.getCode()) {
+        if (Objects.equals(tokenSystemType, SystemTypeEnum.DRIVER.getCode())) {
             return handleDriverRefresh(loginBase, tokenInfoMap);
         } else {
             return handleCommonRefresh(loginBase, tokenInfoMap);

+ 12 - 13
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsUserService.java

@@ -893,26 +893,25 @@ public class KwsUserService {
         }
 
         // 4. 修改密码
-        newPassword =  PasswordUtils.md5(newPassword);
         updatePwd(newPassword, kwsUser);
         // 5. 清除当前登录用户的token缓存
-        clearCurrentUserToken(clientType, deviceId,kwsUser);
+        clearCurrentUserToken(deviceId,kwsUser);
         log.info("密码修改成功,用户ID: {}", userId);
     }
-    private void clearCurrentUserToken(String clientType, String deviceId, KwsUser kwsUser) {
+    private void clearCurrentUserToken(String deviceId, KwsUser kwsUser) {
         try {
             if (kwsUser.getId()!= null) {
-                // 清除当前用户的token
-                String tokenKey = Global.getFullUserTokenKey(clientType, kwsUser.getId());
-                RedissonUtils.delete(tokenKey);
-                // 清除当前用户的refreshToken
-                String refreshTokenKey = Global.getFullRefreshTokenKey(clientType, kwsUser.getId(), deviceId);
-                RedissonUtils.delete(refreshTokenKey);
-
-                // 清除当前用户的登录信息缓存
-                String loginKey = Global.getFullUserLoginKey(kwsUser.getSystemType(), kwsUser.getId());
-                RedissonUtils.delete(loginKey);
+                for (ClientTypeEnum clientTypeEnum : ClientTypeEnum.values()) {
+                    // 清除当前用户的refreshToken
+                    String refreshTokenKey = Global.getFullRefreshTokenKey(clientTypeEnum.getValue(), kwsUser.getId(), deviceId);
+                    RedissonUtils.delete(refreshTokenKey);
+                }
 
+                for (SystemTypeEnum systemTypeEnum : SystemTypeEnum.values()) {
+                    // 清除当前用户的登录信息缓存
+                    String loginKey = Global.getFullUserLoginKey(systemTypeEnum.getCode(), kwsUser.getId());
+                    RedissonUtils.delete(loginKey);
+                }
                 log.info("已清除当前用户token缓存,userId:{}", kwsUser.getId());
             }
         } catch (Exception e) {