Selaa lähdekoodia

账户登录角色校验方法更新,增加相关注释

hejq 7 vuotta sitten
vanhempi
commit
eff3fb9242
1 muutettua tiedostoa jossa 6 lisäystä ja 9 poistoa
  1. 6 9
      src/main/java/com/uas/platform/b2b/filter/SSOInterceptor.java

+ 6 - 9
src/main/java/com/uas/platform/b2b/filter/SSOInterceptor.java

@@ -84,9 +84,6 @@ public class SSOInterceptor extends AbstractSSOInterceptor {
 	@Autowired
     private UserDao userDao;
 
-	@Autowired
-    private com.uas.platform.b2b.v2.service.EnterpriseService v2EnterpriseService;
-
 	@Autowired
     private RoleDao roleDao;
 
@@ -178,7 +175,7 @@ public class SSOInterceptor extends AbstractSSOInterceptor {
             // 登录之前判断在当前企业的角色信息
             if (null != user.getEnterprise() && user.getEnterprise().getEnAdminuu().equals(user.getUserUU())) {
                 Enterprise enterprise = user.getEnterprise();
-                user = setUserRole(user, enterprise);
+                user = checkRoleAndReturnUserInfo(user, enterprise);
                 user.setCurrentEnterprise(enterprise.getUu());
             }
 			SystemSession.setUser(user);
@@ -210,13 +207,13 @@ public class SSOInterceptor extends AbstractSSOInterceptor {
     }
 
     /**
-     * 登陆后角色校验
+     * 校验角色信息,返回用户信息
      *
      * @param user 用户
      * @param enterprise 当前企业
      * @return User
      */
-    private User setUserRole(User user, Enterprise enterprise) {
+    private User checkRoleAndReturnUserInfo(User user, Enterprise enterprise) {
         // 设置为本企业管理员
         List<Role> adminList = roleDao.findByEnUUAndDesc(enterprise.getUu(), "管理员");
         Set<Role> existRoles = user.getRoles();
@@ -227,13 +224,13 @@ public class SSOInterceptor extends AbstractSSOInterceptor {
                     exist[0] = true;
                 }
             });
-            // 角色不存在设置角色,如果存储出现异常直接从数据库取出用户信息
             if (!exist[0]) {
                 user.getRoles().add(adminList.get(0));
                 try {
                     user = userDao.save(user);
                 } catch (Exception e) {
-                    user = userService.findUserByUserUU(user.getUserUU());
+                    // 这里存储异常情况通常是角色存在,因为上面已经添加角色信息,这里直接返回user,不做处理
+                   logger.info("存储异常" + e.getMessage());
                 }
             }
         }
@@ -321,7 +318,7 @@ public class SSOInterceptor extends AbstractSSOInterceptor {
             // 登录之前判断在当前企业的角色信息
             if (null != user.getEnterprise() && user.getEnterprise().getEnAdminuu().equals(user.getUserUU())) {
                 Enterprise enterprise = user.getEnterprise();
-                user = setUserRole(user, enterprise);
+                user = checkRoleAndReturnUserInfo(user, enterprise);
                 user.setCurrentEnterprise(enterprise.getUu());
             }
 			SystemSession.setUser(user);