Browse Source

增加判断企业与用户是否有关联

xuefy 3 years ago
parent
commit
af23651119

+ 20 - 5
tianhu-system/src/main/java/com/tianhu/system/controller/SysMenuController.java

@@ -1,7 +1,9 @@
 package com.tianhu.system.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.tianhu.common.core.constant.Constants;
 import com.tianhu.common.core.constant.UserConstants;
+import com.tianhu.common.core.utils.CommonUtil;
 import com.tianhu.common.core.utils.SecurityUtils;
 import com.tianhu.common.core.utils.StringUtils;
 import com.tianhu.common.core.web.controller.BaseController;
@@ -12,17 +14,16 @@ import com.tianhu.common.security.annotation.PreAuthorize;
 import com.tianhu.common.security.service.TokenService;
 import com.tianhu.system.api.domain.SysUser;
 import com.tianhu.system.domain.SysMenu;
+import com.tianhu.system.domain.SysUserCompanyRel;
 import com.tianhu.system.service.ISysMenuService;
 import com.tianhu.system.service.ISysPermissionService;
+import com.tianhu.system.service.ISysUserCompanyRelService;
 import com.tianhu.system.service.ISysUserService;
 import com.tianhu.system.utils.SysConstant;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-
-import java.util.HashSet;
 import java.util.List;
-import java.util.Set;
 
 /**
  * 菜单信息
@@ -41,6 +42,8 @@ public class SysMenuController extends BaseController
     private ISysPermissionService permissionService;
     @Autowired
     private TokenService tokenService;
+    @Autowired
+    private ISysUserCompanyRelService userCompanyRelService;
 
     /**
      * 获取菜单列表
@@ -169,10 +172,22 @@ public class SysMenuController extends BaseController
         SysUser user = tokenService.getLoginUser().getSysUser();
         //原始版本,根据用户角色查询菜单
 //        List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
+        //查询当前用户与企业关系表
+        String companyId = user.getCompanyType();
+        String userId = CommonUtil.objToString(user.getUserId());
+        LambdaQueryWrapper<SysUserCompanyRel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(SysUserCompanyRel::getSucrCompanyId,companyId);
+        lambdaQueryWrapper.eq(SysUserCompanyRel::getSucrUserId,userId);
+        List<SysUserCompanyRel> relList =  userCompanyRelService.findSysUserCompanyRels(lambdaQueryWrapper);
+        //没有数据
+        if(relList.size() < 1){
+            return AjaxResult.success(000000);
+        }else{
+            List<SysMenu> menus = this.getMenuTreeByProduct(user.getUserId());
+            return AjaxResult.success(menuService.buildMenus(menus));
+        }
 
-        List<SysMenu> menus = this.getMenuTreeByProduct(user.getUserId());
 
-        return AjaxResult.success(menuService.buildMenus(menus));
     }
     /**
      * 根据用户所属主体获取用户菜单