zhouhao 8 years ago
parent
commit
cd26ef6322

+ 15 - 23
hsweb-web-bean/src/main/java/org/hsweb/web/bean/po/user/User.java

@@ -111,19 +111,12 @@ public class User extends GenericPo<String> {
     public boolean hasAccessRole(String rId) {
     public boolean hasAccessRole(String rId) {
         if (getUserRoles() != null)
         if (getUserRoles() != null)
             return getUserRoles().stream().anyMatch(userRole -> userRole.getRoleId().equals(rId));
             return getUserRoles().stream().anyMatch(userRole -> userRole.getRoleId().equals(rId));
-//            for (UserRole userRole : getUserRoles()) {
-//                if (rId.equals(userRole.getRoleId())) return true;
-//            }
         return false;
         return false;
     }
     }
 
 
     public boolean hasAccessModule(String mId) {
     public boolean hasAccessModule(String mId) {
         if (roleInfo == null) initRoleInfo();
         if (roleInfo == null) initRoleInfo();
         return roleInfo.keySet().stream().anyMatch(mdl -> mdl.getId().equals(mId));
         return roleInfo.keySet().stream().anyMatch(mdl -> mdl.getId().equals(mId));
-//        for (Module module : roleInfo.keySet()) {
-//            if (module.getId().equals(mId)) return true;
-//        }
-//        return false;
     }
     }
 
 
     /**
     /**
@@ -131,22 +124,23 @@ public class User extends GenericPo<String> {
      */
      */
     public void initRoleInfo() {
     public void initRoleInfo() {
         Map<Module, Set<String>> roleInfo_tmp = new LinkedHashMap<>();
         Map<Module, Set<String>> roleInfo_tmp = new LinkedHashMap<>();
-        for (UserRole userRole : getUserRoles()) {
-            Role role = userRole.getRole();
-            if (role == null) continue;
-            //角色可访问的路径
-            List<RoleModule> roleModules = role.getModules();
-            for (RoleModule roleModule : roleModules) {
-                Module module = roleModule.getModule();
-                if (module == null || module.getStatus() != 1) continue;
-                Set<String> actions = roleInfo_tmp.get(module);
-                if (actions == null)
-                    roleInfo_tmp.put(module, new HashSet<>(roleModule.getActions()));
-                else {
-                    actions.addAll(roleModule.getActions());
+        if (getUserRoles() != null)
+            for (UserRole userRole : getUserRoles()) {
+                Role role = userRole.getRole();
+                if (role == null) continue;
+                //角色可访问的路径
+                List<RoleModule> roleModules = role.getModules();
+                for (RoleModule roleModule : roleModules) {
+                    Module module = roleModule.getModule();
+                    if (module == null || module.getStatus() != 1) continue;
+                    Set<String> actions = roleInfo_tmp.get(module);
+                    if (actions == null)
+                        roleInfo_tmp.put(module, new HashSet<>(roleModule.getActions()));
+                    else {
+                        actions.addAll(roleModule.getActions());
+                    }
                 }
                 }
             }
             }
-        }
         //排序
         //排序
         roleInfo = MapUtils.sortMapByKey(roleInfo_tmp);
         roleInfo = MapUtils.sortMapByKey(roleInfo_tmp);
     }
     }
@@ -291,8 +285,6 @@ public class User extends GenericPo<String> {
     }
     }
 
 
     public List<UserRole> getUserRoles() {
     public List<UserRole> getUserRoles() {
-        if (userRoles == null)
-            userRoles = new ArrayList<>();
         return userRoles;
         return userRoles;
     }
     }
 
 

+ 1 - 0
hsweb-web-controller/src/main/java/org/hsweb/web/controller/module/ModuleMetaController.java

@@ -65,6 +65,7 @@ public class ModuleMetaController extends GenericController<ModuleMeta, String>
     public ResponseMessage userModuleMeta(@PathVariable String key) {
     public ResponseMessage userModuleMeta(@PathVariable String key) {
         User user = WebUtil.getLoginUser();
         User user = WebUtil.getLoginUser();
         List<UserRole> roles = user.getUserRoles();
         List<UserRole> roles = user.getUserRoles();
+        if (roles == null) roles = new ArrayList<>();
         String[] roleIdList = roles
         String[] roleIdList = roles
                 .stream()
                 .stream()
                 .map(userRole -> userRole.getRoleId())
                 .map(userRole -> userRole.getRoleId())