|
@@ -10,10 +10,7 @@ import com.abi.qms.platform.dao.mapper.UserResourceMapper;
|
|
|
import com.abi.qms.platform.dao.mapper.UserRoleMapper;
|
|
|
import com.abi.qms.platform.dao.vo.result.ListRoleVO;
|
|
|
import com.abi.qms.platform.dto.req.*;
|
|
|
-import com.abi.qms.platform.dto.res.GetRoleInfoRes;
|
|
|
-import com.abi.qms.platform.dto.res.ListResourceRes;
|
|
|
-import com.abi.qms.platform.dto.res.ListResourceTreeByRoleCodeRes;
|
|
|
-import com.abi.qms.platform.dto.res.ListRoleRes;
|
|
|
+import com.abi.qms.platform.dto.res.*;
|
|
|
import com.abi.qms.platform.infrastructure.util.AssertUtil;
|
|
|
import com.abi.qms.platform.infrastructure.util.PageUtil;
|
|
|
import com.abi.qms.platform.infrastructure.util.UserUtil;
|
|
@@ -235,9 +232,10 @@ public class RoleManagerServiceImpl implements RoleManagerService {
|
|
|
UserInfo user = UserUtil.getUser();
|
|
|
//获取当前用户的角色
|
|
|
UserRole role = getRoleByCode(user.getRoleCode());
|
|
|
+ //UserRole role = getRoleByCode("20000000051");
|
|
|
|
|
|
//1-查询角色树
|
|
|
- List<UserResource> userResourceList = userResourceMapper.listResourceTreeByRoleCode(role.getRoleCode());
|
|
|
+ List<UserResource> userResourceList = userResourceMapper.listResourceTreeByRoleCode(role.getRoleCode(),null);
|
|
|
|
|
|
//构造出参
|
|
|
ListResourceTreeByRoleCodeRes res = new ListResourceTreeByRoleCodeRes();
|
|
@@ -273,6 +271,50 @@ public class RoleManagerServiceImpl implements RoleManagerService {
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取登录用户需要的页面以及按钮权限
|
|
|
+ **/
|
|
|
+ @Override
|
|
|
+ public ListLoginUserResourceRes listLoginUserResource() {
|
|
|
+// //获取当前登录的用户
|
|
|
+// UserInfo user = UserUtil.getUser();
|
|
|
+// //获取当前用户的角色
|
|
|
+// UserRole role = getRoleByCode(user.getRoleCode());
|
|
|
+ UserRole role = getRoleByCode("20000000051");
|
|
|
+
|
|
|
+ //1-查询菜单
|
|
|
+ List<UserResource> userResourceList = userResourceMapper.listLoginMenu(role.getRoleCode());
|
|
|
+ //菜单转树形
|
|
|
+ List<ListLoginUserResourceRes.MenuBean> menuBeanList = new ArrayList<>();
|
|
|
+ //放一个map,用于快捷查找到list key为父resourceCode
|
|
|
+ Map<String,List<ListLoginUserResourceRes.MenuBean>> resourceListMap = new HashMap<>();
|
|
|
+ //如果父类code为null,那么父list就是顶层list
|
|
|
+ resourceListMap.put(null,menuBeanList);
|
|
|
+ //开始循环放入,因为查询语句排过序,所以查到的顺序,一定是先父后子
|
|
|
+ for(UserResource resource:userResourceList){
|
|
|
+ //先获取父类列表
|
|
|
+ List<ListLoginUserResourceRes.MenuBean> parentList = resourceListMap.get(resource.getParentResourceCode());
|
|
|
+ //然后放入自己
|
|
|
+ ListLoginUserResourceRes.MenuBean menuBean = PojoConverterUtils.copy(resource, ListLoginUserResourceRes.MenuBean.class);
|
|
|
+ parentList.add(menuBean);
|
|
|
+ //如果resourceCode是3位,则需要创建子list
|
|
|
+ if(menuBean.getResourceCode().length()==3){
|
|
|
+ menuBean.setResourceBeanList(new ArrayList<>());
|
|
|
+ resourceListMap.put(menuBean.getResourceCode(),menuBean.getResourceBeanList());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //2-查询按钮
|
|
|
+ List<UserResource> btnResourceList = userResourceMapper.listResourceTreeByRoleCode(role.getRoleCode(),2);
|
|
|
+
|
|
|
+ //构造出参
|
|
|
+ ListLoginUserResourceRes res = new ListLoginUserResourceRes();
|
|
|
+ res.setMenuBeanList(menuBeanList);
|
|
|
+ res.setBtnBeanList(PojoConverterUtils.copyList(btnResourceList,ListLoginUserResourceRes.BtnBean.class));
|
|
|
+
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 启用角色
|
|
|
**/
|