소스 검색

权限管理-列表查询1

jichaobo 3 년 전
부모
커밋
02cd3bcc86

+ 2 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/system/SysMenuMapper.java

@@ -23,6 +23,8 @@ public interface SysMenuMapper
      */
     public List<SysMenu> selectMenuList(SysMenu menu);
 
+    public List<SysMenu> getMenuListOne(Long userId,String menuType);
+
     /**
      * 根据用户所有权限
      *

+ 16 - 0
fiveep-persistence/src/main/resources/mapper/mysql/system/SysMenuMapper.xml

@@ -157,6 +157,22 @@
 	</select>
 
 
+	<select id="getMenuListOne" parameterType="com.bizmatics.model.system.SysMenu">
+		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
+		from sys_menu m
+		left join sys_role_menu rm on m.menu_id = rm.menu_id
+		left join sys_user_role ur on rm.role_id = ur.role_id
+		left join sys_role ro on ur.role_id = ro.role_id
+		where ur.user_id = #{userId}
+			AND visible = 0
+			AND status = 0
+		<if test="status != null and status != ''">
+			AND menu_type = #{menuType}
+		</if>
+		order by m.parent_id, m.order_num
+	</select>
+
+
 	<select id="selectMenuListByRoleId" resultType="Integer">
 		select m.menu_id
 		from sys_menu m

+ 29 - 6
fiveep-service/src/main/java/com/bizmatics/service/system/impl/SysMenuServiceImpl.java

@@ -3,6 +3,7 @@ package com.bizmatics.service.system.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.bizmatics.common.core.util.StringUtils;
+import com.bizmatics.common.mvc.utils.ServletUtils;
 import com.bizmatics.model.PlatformArea;
 import com.bizmatics.model.base.TreeSelect;
 import com.bizmatics.model.constants.Constants;
@@ -14,6 +15,7 @@ import com.bizmatics.model.vo.*;
 import com.bizmatics.persistence.mapper.system.SysMenuMapper;
 import com.bizmatics.persistence.mapper.system.SysRoleMapper;
 import com.bizmatics.persistence.mapper.system.SysRoleMenuMapper;
+import com.bizmatics.service.config.security.LoginUser;
 import com.bizmatics.service.impl.DeviceServiceImpl;
 import com.bizmatics.service.system.ISysMenuService;
 import com.bizmatics.service.util.SecurityUtils;
@@ -45,6 +47,9 @@ public class SysMenuServiceImpl implements ISysMenuService {
     @Autowired
     private ISysMenuService menuService;
 
+    @Autowired
+    private TokenService tokenService;
+
     /**
      * 根据用户查询系统菜单列表
      *
@@ -268,12 +273,30 @@ public class SysMenuServiceImpl implements ISysMenuService {
     public List<Object> getAuthority(){
 
         SysUser user = SecurityUtils.getLoginUser().getUser();
-        //全部目录查询
-        List<SysMenu> sysMenuListTwo = menuMapper.getSysMenuList("M");
-        //全部菜单查询
-        List<SysMenu> sysMenuListOne = menuMapper.getSysMenuList("C");
-        //全部按钮列表
-        List<SysMenu> sysMenuListThree = menuMapper.getSysMenuList("F");
+        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
+
+        List<SysMenu> menuList = null;
+        // 管理员显示所有菜单信息
+//            menuList = menuMapper.selectMenuList(menu);
+//            menuList = menuMapper.selectMenuListByUserId(menu);
+        List<SysMenu> sysMenuListTwo = new ArrayList<>();
+        List<SysMenu> sysMenuListOne = new ArrayList<>();
+        List<SysMenu> sysMenuListThree = new ArrayList<>();
+        if (SysUser.isAdmin(user.getUserId())){
+            //全部目录查询
+            sysMenuListTwo = menuMapper.getSysMenuList("M");
+            //全部菜单查询
+            sysMenuListOne = menuMapper.getSysMenuList("C");
+            //全部按钮列表
+            sysMenuListThree = menuMapper.getSysMenuList("F");
+        }else {
+            //全部目录查询
+            sysMenuListTwo = menuMapper.getMenuListOne(user.getUserId(),"M");
+            //全部菜单查询
+            sysMenuListOne = menuMapper.getMenuListOne(user.getUserId(),"C");
+            //全部按钮列表
+            sysMenuListThree = menuMapper.getMenuListOne(user.getUserId(),"F");
+        }
         //已选中按钮列表
         List<SysMenu> sysMenuListFour = menuMapper.getButtonlist(user.getUserId(), null);
         List<SysMenuTwoVo> sysMenuVoListOne = new ArrayList<>();