Pārlūkot izejas kodu

配置文件修改

Althars123 3 gadi atpakaļ
vecāks
revīzija
efecd96e4c

+ 17 - 0
sdjk-common/src/main/java/com/miaxis/common/core/domain/model/LoginUser.java

@@ -25,10 +25,19 @@ public class LoginUser implements UserDetails
 {
     private static final long serialVersionUID = 1L;
 
+
+
     /**
      * 用户唯一标识
      */
     @ApiModelProperty(value = "用户唯一标识")
+    private String id;
+
+
+    /**
+     * 用户token
+     */
+    @ApiModelProperty(value = "token")
     private String token;
 
     /**
@@ -87,13 +96,20 @@ public class LoginUser implements UserDetails
 
     public LoginUser(UserInfo student) {
         this.student = student;
+        this.id= "student_"+student.getId();
     }
 
     public String getToken()
     {
         return token;
     }
+    public String getId() {
+        return id;
+    }
 
+    public void setId(String id) {
+        this.id = id;
+    }
     public void setToken(String token)
     {
         this.token = token;
@@ -107,6 +123,7 @@ public class LoginUser implements UserDetails
     {
         this.user = user;
         this.permissions = permissions;
+        this.id = "sysUser_"+user.getUserId();
     }
 
     @JsonIgnore

+ 9 - 0
sdjk-framework/src/main/java/com/miaxis/framework/web/service/TokenService.java

@@ -152,6 +152,15 @@ public class TokenService
         // 根据uuid将loginUser缓存
         String userKey = getTokenKey(loginUser.getToken());
         redisCache.setCacheObject(userKey, loginUser, expireTime, TimeUnit.MINUTES);
+        //确保唯一登录
+        uniqueLogin(loginUser.getId(),userKey);
+    }
+
+    private void uniqueLogin(String id, String userKey) {
+        String key = redisCache.getCacheObject(id);
+        redisCache.deleteObject(key);
+        redisCache.setCacheObject(id,userKey);
+
     }
 
     /**