浏览代码

新需求

傅行帆 5 年前
父节点
当前提交
a974be4beb

+ 3
- 5
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserAuthMenuController.java 查看文件

2
 
2
 
3
 import com.alibaba.fastjson.JSONArray;
3
 import com.alibaba.fastjson.JSONArray;
4
 import com.alibaba.fastjson.JSONObject;
4
 import com.alibaba.fastjson.JSONObject;
5
-import com.google.gson.JsonArray;
6
 import com.huiju.estateagents.base.BaseController;
5
 import com.huiju.estateagents.base.BaseController;
7
 import com.huiju.estateagents.base.ResponseBean;
6
 import com.huiju.estateagents.base.ResponseBean;
8
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
7
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
9
 import com.huiju.estateagents.entity.SysButtonInMenu;
8
 import com.huiju.estateagents.entity.SysButtonInMenu;
10
 import com.huiju.estateagents.entity.SysMenu;
9
 import com.huiju.estateagents.entity.SysMenu;
11
-import com.huiju.estateagents.entity.TaRole;
12
 import org.springframework.beans.factory.annotation.Autowired;
10
 import org.springframework.beans.factory.annotation.Autowired;
13
 import org.springframework.web.bind.annotation.*;
11
 import org.springframework.web.bind.annotation.*;
14
 
12
 
39
                                          @RequestParam("pageSize")Integer pageSize,
37
                                          @RequestParam("pageSize")Integer pageSize,
40
                                          HttpServletRequest request){
38
                                          HttpServletRequest request){
41
         Integer userId = getUserId(request);
39
         Integer userId = getUserId(request);
42
-        return iTaUserAuthMenuService.getMenuByUserId(pageNum,pageSize,userId.toString());
40
+        return iTaUserAuthMenuService.getMenuByUserId(pageNum,pageSize,userId.toString(), getOrgId(request));
43
     }
41
     }
44
 
42
 
45
     /**
43
     /**
50
      */
48
      */
51
     @RequestMapping(value="/admin/menuList",method= RequestMethod.GET)
49
     @RequestMapping(value="/admin/menuList",method= RequestMethod.GET)
52
     public ResponseBean getMenuByRole(@RequestParam("pageNum")Integer pageNum,
50
     public ResponseBean getMenuByRole(@RequestParam("pageNum")Integer pageNum,
53
-                                      @RequestParam("pageSize")Integer pageSize){
54
-        return iTaUserAuthMenuService.getAllMenu(pageNum, pageSize);
51
+                                      @RequestParam("pageSize")Integer pageSize, HttpServletRequest request){
52
+        return iTaUserAuthMenuService.getAllMenu(pageNum, pageSize, getOrgId(request));
55
     }
53
     }
56
 
54
 
57
     /**
55
     /**

+ 2
- 2
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserController.java 查看文件

291
         try {
291
         try {
292
             TaUser taUser = iTaUserService.getById(map.get("userId").toString());
292
             TaUser taUser = iTaUserService.getById(map.get("userId").toString());
293
             List<TaRole> roles = iTaRoleService.getRolesByUser(taUser.getUserId());
293
             List<TaRole> roles = iTaRoleService.getRolesByUser(taUser.getUserId());
294
-            ResponseBean authMenu = iTaUserAuthMenuService.getMenuByUserId(null, null, taUser.getUserId().toString());
294
+            ResponseBean authMenu = iTaUserAuthMenuService.getMenuByUserId(null, null, taUser.getUserId().toString(),taUser.getOrgId());
295
             ResponseBean authButton = iTaUserAuthButtonService.getButtonByUserId(null, null, taUser.getUserId().toString());
295
             ResponseBean authButton = iTaUserAuthButtonService.getButtonByUserId(null, null, taUser.getUserId().toString());
296
             taUser.setMenus((List<SysMenu>) authMenu.getData());
296
             taUser.setMenus((List<SysMenu>) authMenu.getData());
297
             taUser.setButtons((List<SysButtonInMenu>) authButton.getData());
297
             taUser.setButtons((List<SysButtonInMenu>) authButton.getData());
299
             taUser.setLoginPassword("");
299
             taUser.setLoginPassword("");
300
 
300
 
301
             //获取所有菜单
301
             //获取所有菜单
302
-            List<SysMenu> allMenus = (List<SysMenu>) iTaUserAuthMenuService.getAllMenu(null, null).getData();
302
+            List<SysMenu> allMenus = (List<SysMenu>) iTaUserAuthMenuService.getAllMenu(null, null,taUser.getOrgId()).getData();
303
             List<SysButtonInMenu> allButtons = (List<SysButtonInMenu>) iTaUserAuthButtonService.getAllButton(null, null).getData();
303
             List<SysButtonInMenu> allButtons = (List<SysButtonInMenu>) iTaUserAuthButtonService.getAllButton(null, null).getData();
304
 
304
 
305
             userMap.put("taUser", taUser);
305
             userMap.put("taUser", taUser);

+ 2
- 2
src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserAuthMenuService.java 查看文件

15
  */
15
  */
16
 public interface ITaUserAuthMenuService extends IService<SysMenu> {
16
 public interface ITaUserAuthMenuService extends IService<SysMenu> {
17
 
17
 
18
-    ResponseBean getMenuByUserId(Integer pageNum, Integer pageSize, String userId);
18
+    ResponseBean getMenuByUserId(Integer pageNum, Integer pageSize, String userId, Integer orgId);
19
 
19
 
20
-    ResponseBean getAllMenu(Integer pageNum, Integer pageSize);
20
+    ResponseBean getAllMenu(Integer pageNum, Integer pageSize, Integer orgId);
21
 
21
 
22
     ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList,String name,Integer orgid,List<SysButtonInMenu> sysButtonInMenuList);
22
     ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList,String name,Integer orgid,List<SysButtonInMenu> sysButtonInMenuList);
23
 }
23
 }

+ 48
- 13
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthMenuServiceImpl.java 查看文件

1
 package com.huiju.estateagents.center.taUser.service.impl;
1
 package com.huiju.estateagents.center.taUser.service.impl;
2
 
2
 
3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
-import com.baomidou.mybatisplus.core.metadata.IPage;
5
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
 import com.huiju.estateagents.base.ResponseBean;
5
 import com.huiju.estateagents.base.ResponseBean;
8
-import com.huiju.estateagents.center.taUser.entity.TaUser;
9
 import com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper;
6
 import com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper;
10
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
7
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
11
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
8
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
9
+import com.huiju.estateagents.common.CommConstant;
12
 import com.huiju.estateagents.entity.*;
10
 import com.huiju.estateagents.entity.*;
13
-import com.huiju.estateagents.mapper.TaRoleButtonMapper;
14
-import com.huiju.estateagents.mapper.TaRoleMapper;
15
-import com.huiju.estateagents.mapper.TaRoleMenuMapper;
11
+import com.huiju.estateagents.mapper.*;
16
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.beans.factory.annotation.Autowired;
17
 import org.springframework.stereotype.Service;
13
 import org.springframework.stereotype.Service;
18
 
14
 
19
 import java.time.LocalDateTime;
15
 import java.time.LocalDateTime;
20
 import java.util.ArrayList;
16
 import java.util.ArrayList;
21
-import java.util.Arrays;
22
 import java.util.List;
17
 import java.util.List;
18
+import java.util.stream.Collectors;
23
 
19
 
24
 /**
20
 /**
25
  * @author weicc
21
  * @author weicc
44
     @Autowired
40
     @Autowired
45
     private TaRoleButtonMapper taRoleButtonMapper;
41
     private TaRoleButtonMapper taRoleButtonMapper;
46
 
42
 
43
+    @Autowired
44
+    private TaAdvancedControllerMapper taAdvancedControllerMapper;
45
+
46
+    @Autowired
47
+    private SysAdvancedConfigRelationMapper sysAdvancedConfigRelationMapper;
48
+
47
     /**
49
     /**
48
      * 根据用户id获取授权菜单
50
      * 根据用户id获取授权菜单
49
      * @param pageNum
51
      * @param pageNum
50
      * @param pageSize
52
      * @param pageSize
51
      * @param userId
53
      * @param userId
54
+     * @param orgId
52
      * @return
55
      * @return
53
      */
56
      */
54
     @Override
57
     @Override
55
-    public ResponseBean getMenuByUserId(Integer pageNum, Integer pageSize, String userId) {
56
-
57
-        List<SysMenu> records = taUserAuthMenuMapper.sysMenuListByUserId(userId);
58
+    public ResponseBean getMenuByUserId(Integer pageNum, Integer pageSize, String userId, Integer orgId) {
59
+        List<SysMenu> records = new ArrayList<>();
60
+        List<SysMenu> menuList = taUserAuthMenuMapper.sysMenuListByUserId(userId);
61
+        records.addAll(menuList);
62
+        //添加高级配置的过滤条件
63
+        List<TaAdvancedController> taAdvancedControllerList = taAdvancedControllerMapper.selectList(new QueryWrapper<TaAdvancedController>().eq("org_id", orgId));
64
+
65
+        //需要过滤的菜单
66
+        QueryWrapper<SysAdvancedConfigRelation> sysAdvancedConfigRelationQueryWrapper = new QueryWrapper<>();
67
+        sysAdvancedConfigRelationQueryWrapper.eq("target_type",CommConstant.ADVANCED_TYPE_MENU);
68
+        sysAdvancedConfigRelationQueryWrapper.notIn(taAdvancedControllerList.size() > 0,"advanced_config_id",taAdvancedControllerList.stream().map(TaAdvancedController::getAdvancedConfigId).collect(Collectors.toList()));
69
+        List<SysAdvancedConfigRelation> sysAdvancedConfigRelations = sysAdvancedConfigRelationMapper.selectList(sysAdvancedConfigRelationQueryWrapper);
70
+        menuList.forEach(e -> {
71
+            sysAdvancedConfigRelations.forEach(s -> {
72
+                if (e.getMenuId() == Integer.valueOf(s.getTargetId())){
73
+                    records.remove(e);
74
+                }
75
+            });
76
+        });
58
         return ResponseBean.success(records);
77
         return ResponseBean.success(records);
59
     }
78
     }
60
 
79
 
61
     @Override
80
     @Override
62
-    public ResponseBean getAllMenu(Integer pageNum, Integer pageSize) {
63
-
64
-        List<SysMenu> records = taUserAuthMenuMapper.sysMenuListByRoleId();
81
+    public ResponseBean getAllMenu(Integer pageNum, Integer pageSize, Integer orgId) {
82
+        List<SysMenu> records = new ArrayList<>();
83
+        List<SysMenu> menuList = taUserAuthMenuMapper.sysMenuListByRoleId();
84
+        records.addAll(menuList);
85
+        //添加高级配置的过滤条件
86
+        List<TaAdvancedController> taAdvancedControllerList = taAdvancedControllerMapper.selectList(new QueryWrapper<TaAdvancedController>().eq("org_id", orgId));
87
+
88
+        //需要过滤的菜单
89
+        QueryWrapper<SysAdvancedConfigRelation> sysAdvancedConfigRelationQueryWrapper = new QueryWrapper<>();
90
+        sysAdvancedConfigRelationQueryWrapper.eq("target_type",CommConstant.ADVANCED_TYPE_MENU);
91
+        sysAdvancedConfigRelationQueryWrapper.notIn(taAdvancedControllerList.size() > 0,"advanced_config_id",taAdvancedControllerList.stream().map(TaAdvancedController::getAdvancedConfigId).collect(Collectors.toList()));
92
+        List<SysAdvancedConfigRelation> sysAdvancedConfigRelations = sysAdvancedConfigRelationMapper.selectList(sysAdvancedConfigRelationQueryWrapper);
93
+        menuList.forEach(e -> {
94
+            sysAdvancedConfigRelations.forEach(s -> {
95
+                if (e.getMenuId() == Integer.valueOf(s.getTargetId())){
96
+                    records.remove(e);
97
+                }
98
+            });
99
+        });
65
 
100
 
66
         QueryWrapper<TaRoleMenu> queryWrapper = new QueryWrapper();
101
         QueryWrapper<TaRoleMenu> queryWrapper = new QueryWrapper();
67
         List<TaRoleMenu> taRoleMenus = taRoleMenuMapper.selectList(queryWrapper);
102
         List<TaRoleMenu> taRoleMenus = taRoleMenuMapper.selectList(queryWrapper);

+ 5
- 0
src/main/java/com/huiju/estateagents/common/CommConstant.java 查看文件

680
      * 最大认筹金额
680
      * 最大认筹金额
681
      */
681
      */
682
     public static final Integer MAX_RAISE_PRICE = 5000;
682
     public static final Integer MAX_RAISE_PRICE = 5000;
683
+
684
+    /**
685
+     * 菜单
686
+     */
687
+    public static final Object ADVANCED_TYPE_MENU = "menu";
683
 }
688
 }

+ 4
- 1
src/main/java/com/huiju/estateagents/entity/SysAdvancedConfigRelation.java 查看文件

39
      */
39
      */
40
     private String targetId;
40
     private String targetId;
41
 
41
 
42
-
42
+    /**
43
+     * 高级配置id
44
+     */
45
+    private Integer advancedConfigId;
43
 }
46
 }