xiewj преди 2 години
родител
ревизия
f0dedf186d

+ 12 - 3
src/main/java/com/fdkankan/site/controller/MenuController.java

@@ -39,15 +39,24 @@ public class MenuController extends BaseController {
      */
     @PostMapping("/treeselect/all")
     public ResultData treeselectAll( ){
-        List<Menu> menus = menuService.findAllMenu();
+        List<Menu> menus = menuService.findAllMenu("");
         return ResultData.ok(menuService.buildMenuTreeSelect(menus));
     }
     /**
+     * 根据获取左侧菜单资源
+     */
+    @PostMapping("/menuselect")
+    public ResultData menuselect(){
+        List<Menu> menus = menuService.findAllMenu("C");
+        return ResultData.ok(menuService.buildMenuTreeSelect(menus));
+    }
+
+    /**
      * 根据用户token获取菜单树列表
      */
     @PostMapping("/treeselect")
-    public ResultData treeselect( ){
-        List<Menu> menus = menuService.findMenuTreeByUserId(getUserId());
+    public ResultData treeselect(@RequestBody MenuParam param){
+        List<Menu> menus = menuService.findMenuTreeByUserIdAndProjectId(getUserId(),param.getProjectId());
         return ResultData.ok(menuService.buildMenuTreeSelect(menus));
     }
 }

+ 27 - 0
src/main/java/com/fdkankan/site/controller/TestController.java

@@ -9,6 +9,7 @@ import com.fdkankan.site.common.ResultCode;
 import com.fdkankan.site.common.ResultData;
 import com.fdkankan.site.entity.ProjectTeam;
 import com.fdkankan.site.entity.User;
+import com.fdkankan.site.entity.UserRole;
 import com.fdkankan.site.exception.BusinessException;
 import com.fdkankan.site.httpClient.bim.BimCallBackDTO;
 import com.fdkankan.site.httpClient.bim.BimFaceVO;
@@ -16,6 +17,7 @@ import com.fdkankan.site.httpClient.client.BimClient;
 import com.fdkankan.site.httpClient.bim.BimUploadParam;
 import com.fdkankan.site.httpClient.client.FdKKClient;
 import com.fdkankan.site.service.IProjectTeamService;
+import com.fdkankan.site.service.IUserRoleService;
 import com.fdkankan.site.service.IUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -33,6 +35,9 @@ public class TestController extends BaseController {
     IProjectTeamService projectTeaml;
     @Autowired
     IUserService userService;
+
+    @Autowired
+    IUserRoleService userRoleService;
     @PostMapping("/test")
     @SaIgnore
     public ResultData test(){
@@ -50,4 +55,26 @@ public class TestController extends BaseController {
 //        }
         return ResultData.ok( );
     }
+
+    @PostMapping("/buildUserRole")
+    @SaIgnore
+    public ResultData test1(){
+        for (ProjectTeam projectTeam : projectTeaml.list()) {
+            Integer isCreater = projectTeam.getIsCreater();
+            UserRole userRole=new UserRole();
+            userRole.setProjectId(projectTeam.getProjectId());
+            User byUserName = userService.getById(projectTeam.getUserId());
+            if (isCreater==1){
+                userRole.setUserId(byUserName.getUserId());
+                userRole.setRoleId(1);
+            }else {
+                userRole.setUserId(byUserName.getUserId());
+                userRole.setRoleId(2);
+            }
+            userRoleService.save(userRole);
+
+            projectTeaml.updateById(projectTeam);
+        }
+        return ResultData.ok( );
+    }
 }

+ 3 - 0
src/main/java/com/fdkankan/site/entity/Menu.java

@@ -50,6 +50,9 @@ public class Menu extends BaseEntity
     @TableField("menu_type")
     private String menuType;
 
+    /** 是否默认选中 */
+    @TableField("focus")
+    private Boolean focus;
 
     /** 显示状态(0显示 1隐藏) */
     @TableField("visible")

+ 4 - 0
src/main/java/com/fdkankan/site/entity/vo/TreeSelect.java

@@ -24,6 +24,8 @@ public class TreeSelect implements Serializable
     /** 节点名称 */
     private String label;
     private String path;
+    private Boolean focus;
+    private String menuType;
     /** 子节点 */
     @JsonInclude(JsonInclude.Include.NON_EMPTY)
     private List<TreeSelect> children;
@@ -34,6 +36,8 @@ public class TreeSelect implements Serializable
         this.id = menu.getMenuId();
         this.label = menu.getMenuName();
         this.path = menu.getPath();
+        this.focus = menu.getFocus();
+        this.menuType = menu.getMenuType();
         this.children = menu.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
     }
 

+ 1 - 1
src/main/java/com/fdkankan/site/request/MenuParam.java

@@ -10,6 +10,6 @@ public class MenuParam extends RequestBase {
     /**
      *项目id
      */
-    private boolean projectId;
+    private Integer projectId;
 
 }

+ 2 - 2
src/main/java/com/fdkankan/site/service/IMenuService.java

@@ -26,14 +26,14 @@ public interface IMenuService extends IService<Menu> {
      * @param userId 用户ID
      * @return 菜单列表
      */
-    List<Menu> findMenuTreeByUserId(Integer userId);
+    List<Menu> findMenuTreeByUserIdAndProjectId(Integer userId, Integer projectId);
 
     /**
      * 根据用户ID查询菜单树信息
      *
      * @return 菜单列表
      */
-    List<Menu> findAllMenu();
+    List<Menu> findAllMenu(String menuType);
 
     List<TreeSelect> buildMenuTreeSelect(List<Menu> menus);
 

+ 14 - 4
src/main/java/com/fdkankan/site/service/impl/MenuServiceImpl.java

@@ -1,9 +1,12 @@
 package com.fdkankan.site.service.impl;
 
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fdkankan.site.common.PageInfo;
+import com.fdkankan.site.common.ResultCode;
+import com.fdkankan.site.common.util.VUtils;
 import com.fdkankan.site.entity.*;
 import com.fdkankan.site.entity.vo.TreeSelect;
 import com.fdkankan.site.mapper.IMenuMapper;
@@ -29,13 +32,16 @@ public class MenuServiceImpl extends ServiceImpl<IMenuMapper, Menu> implements I
     }
 
     @Override
-    public List<Menu> findMenuTreeByUserId(Integer userId) {
+    public List<Menu> findMenuTreeByUserIdAndProjectId(Integer userId,Integer projectId) {
+        VUtils.isTure(projectId == null).throwMessage(ResultCode.PARAM_MISS);
         MPJLambdaWrapper<Menu> wrapper = new MPJLambdaWrapper<Menu>()
                 .selectAll(Menu.class)
                 .leftJoin(RoleMenu.class,RoleMenu::getMenuId,Menu::getMenuId)
                 .leftJoin(UserRole.class,UserRole::getRoleId,RoleMenu::getRoleId)
                 .leftJoin(Role.class, Role::getRoleId, UserRole::getRoleId)
+                .eq(Menu::getMenuType,"F")
                 .eq(UserRole::getUserId,userId)
+                .eq(UserRole::getProjectId,projectId)
                 .orderByAsc(Menu::getParentId,Menu::getOrderNum)
                 .groupBy(Menu::getMenuId);
         List<Menu> menus = baseMapper.selectJoinList(Menu.class, wrapper);
@@ -52,10 +58,14 @@ public class MenuServiceImpl extends ServiceImpl<IMenuMapper, Menu> implements I
         return menus;
     }
     @Override
-    public List<Menu> findAllMenu() {
-        return list();
+    public List<Menu> findAllMenu(String menuType) {
+        LambdaQueryWrapper<Menu> wrapper=new LambdaQueryWrapper();
+        if (StrUtil.isNotEmpty(menuType)){
+            wrapper.eq(Menu::getMenuType,menuType);
+        }
+        return list(wrapper);
     }
-    /**
+    /**s
      * 构建前端所需要下拉树结构
      *
      * @param menus 菜单列表