dingxin 5 年前
父节点
当前提交
b22fafe435

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

@@ -1,5 +1,7 @@
1 1
 package com.huiju.estateagents.center.taUser.controller;
2 2
 
3
+import com.alibaba.fastjson.JSONArray;
4
+import com.alibaba.fastjson.JSONObject;
3 5
 import com.huiju.estateagents.base.BaseController;
4 6
 import com.huiju.estateagents.base.ResponseBean;
5 7
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthButtonService;
@@ -56,8 +58,11 @@ public class TaUserAuthButtonController extends BaseController {
56 58
      */
57 59
     @RequestMapping(value="/admin/updateAuthButton",method= RequestMethod.PUT)
58 60
     public ResponseBean updateUserAuthMenu(HttpServletRequest request,
59
-                                           @RequestBody List<SysButtonInMenu> sysButtonList){
61
+                                           @RequestBody String sysButton){
60 62
         Integer userId = getUserId(request);
61
-        return iTaUserAuthButtonService.updateUserAuthButton(userId, sysButtonList);
63
+        JSONObject Object = JSONObject.parseObject(sysButton);
64
+        JSONArray JSONArray = Object.getJSONArray("sysButton");
65
+        List<SysButtonInMenu> sysButtonInMenuList = JSONArray.toJavaList(SysButtonInMenu.class);
66
+        return iTaUserAuthButtonService.updateUserAuthButton(userId, sysButtonInMenuList);
62 67
     }
63 68
 }

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

@@ -1,9 +1,13 @@
1 1
 package com.huiju.estateagents.center.taUser.controller;
2 2
 
3
+import com.alibaba.fastjson.JSONArray;
4
+import com.alibaba.fastjson.JSONObject;
5
+import com.google.gson.JsonArray;
3 6
 import com.huiju.estateagents.base.BaseController;
4 7
 import com.huiju.estateagents.base.ResponseBean;
5 8
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
6 9
 import com.huiju.estateagents.entity.SysMenu;
10
+import com.huiju.estateagents.entity.TaRole;
7 11
 import org.springframework.beans.factory.annotation.Autowired;
8 12
 import org.springframework.web.bind.annotation.*;
9 13
 
@@ -53,10 +57,14 @@ public class TaUserAuthMenuController extends BaseController {
53 57
      * 用户授权菜单
54 58
      * @return
55 59
      */
56
-    @RequestMapping(value="/admin/updateAuthMenu",method= RequestMethod.PUT)
60
+    @RequestMapping(value="/admin/updateAuthMenu",method= RequestMethod.POST)
57 61
     public ResponseBean updateUserAuthMenu(HttpServletRequest request,
58
-                                           @RequestBody List<SysMenu> sysMenuList){
59
-        Integer userId = getUserId(request);
60
-        return iTaUserAuthMenuService.updateUserAuthMenu(userId, sysMenuList);
62
+                                           @RequestBody String sysMenu){
63
+        JSONObject Object = JSONObject.parseObject(sysMenu);
64
+        String name = Object.getString("name");
65
+        Integer userId = Object.getInteger("id");
66
+        JSONArray JSONArray = Object.getJSONArray("sysMenu");
67
+        List<SysMenu> sysMenuList = JSONArray.toJavaList(SysMenu.class);
68
+        return iTaUserAuthMenuService.updateUserAuthMenu(userId, sysMenuList,name,getOrgId(request));
61 69
     }
62 70
 }

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

@@ -18,5 +18,5 @@ public interface ITaUserAuthMenuService extends IService<SysMenu> {
18 18
 
19 19
     ResponseBean getAllMenu(Integer pageNum, Integer pageSize);
20 20
 
21
-    ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList);
21
+    ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList,String name,Integer orgid);
22 22
 }

+ 1
- 0
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthButtonServiceImpl.java 查看文件

@@ -72,6 +72,7 @@ public class TaUserAuthButtonServiceImpl extends ServiceImpl<TaUserAuthButtonMap
72 72
             return responseBean;
73 73
         }
74 74
 
75
+
75 76
         try{
76 77
             //授权菜单按钮,先删除在新增
77 78
             taUserAuthButtonMapper.deleteUserAuthButton(userId);

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

@@ -10,7 +10,9 @@ import com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper;
10 10
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
11 11
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
12 12
 import com.huiju.estateagents.entity.SysMenu;
13
+import com.huiju.estateagents.entity.TaRole;
13 14
 import com.huiju.estateagents.entity.TaRoleMenu;
15
+import com.huiju.estateagents.mapper.TaRoleMapper;
14 16
 import com.huiju.estateagents.mapper.TaRoleMenuMapper;
15 17
 import org.springframework.beans.factory.annotation.Autowired;
16 18
 import org.springframework.stereotype.Service;
@@ -36,6 +38,9 @@ public class TaUserAuthMenuServiceImpl extends ServiceImpl<TaUserAuthMenuMapper,
36 38
     @Autowired
37 39
     private TaUserMapper taUserMapper;
38 40
 
41
+    @Autowired
42
+    private  TaRoleMapper taRoleMapper;
43
+
39 44
     /**
40 45
      * 根据用户id获取授权菜单
41 46
      * @param pageNum
@@ -72,20 +77,51 @@ public class TaUserAuthMenuServiceImpl extends ServiceImpl<TaUserAuthMenuMapper,
72 77
     }
73 78
 
74 79
     @Override
75
-    public ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList) {
80
+    public ResponseBean updateUserAuthMenu(Integer roleID, List<SysMenu> sysMenuList,String name,Integer orgid) {
76 81
         ResponseBean responseBean = new ResponseBean();
77
-
78
-        // 人员
79
-        TaUser taUser = taUserMapper.selectById(userId);
80
-        if (null == taUser) {
81
-            responseBean.addError("授权人不存在");
82
-            return responseBean;
82
+        if (null == roleID){
83
+            addUserAuthMenu( sysMenuList,name,orgid);
84
+        }else {
85
+
86
+//            // 人员
87
+//            TaUser taUser = taUserMapper.selectById(userId);
88
+//            if (null == taUser) {
89
+//                responseBean.addError("授权人不存在");
90
+//                return responseBean;
91
+//            }
92
+            try {
93
+                //授权菜单,先删除在新增
94
+                taUserAuthMenuMapper.deleteUserAuthMenu(roleID);
95
+                for (SysMenu sysMenu: sysMenuList) {
96
+                    TaRoleMenu taRoleMenu = new TaRoleMenu();
97
+                    taRoleMenu.setRoleId(userId);
98
+                    taRoleMenu.setMenuId(sysMenu.getMenuId());
99
+                    taRoleMenuMapper.insert(taRoleMenu);
100
+                }
101
+                    responseBean.addSuccess("操作成功");
102
+                return responseBean;
103
+            } catch (Exception e) {
104
+                responseBean.addSuccess("操作失败");
105
+                e.printStackTrace();
106
+                return responseBean;
107
+            }
83 108
         }
109
+        return responseBean;
110
+    }
84 111
 
112
+    public ResponseBean addUserAuthMenu(List<SysMenu> sysMenuList,String name,Integer orgid) {
113
+        ResponseBean responseBean = new ResponseBean();
85 114
         try{
86
-            //授权菜单,先删除在新增
87
-            taUserAuthMenuMapper.deleteUserAuthMenu(userId);
88
-            taUserAuthMenuMapper.addUserAuthMenu(userId, sysMenuList);
115
+            TaRole taRole = new TaRole();
116
+            taRole.setRoleName(name);
117
+            taRole.setOrgId(orgid);
118
+            taRoleMapper.insert(taRole);
119
+          for (SysMenu sysMenu: sysMenuList){
120
+              TaRoleMenu taRoleMenu = new TaRoleMenu();
121
+              taRoleMenu.setRoleId(taRole.getRoleId());
122
+              taRoleMenu.setMenuId(sysMenu.getMenuId());
123
+              taRoleMenuMapper.insert(taRoleMenu);
124
+          }
89 125
             responseBean.addSuccess("操作成功");
90 126
             return  responseBean;
91 127
         }catch (Exception e){
@@ -96,4 +132,5 @@ public class TaUserAuthMenuServiceImpl extends ServiceImpl<TaUserAuthMenuMapper,
96 132
 
97 133
     }
98 134
 
135
+
99 136
 }

+ 11
- 16
src/main/java/com/huiju/estateagents/controller/TaRoleController.java 查看文件

@@ -66,7 +66,7 @@ public class TaRoleController extends BaseController {
66 66
      * @param taRole 实体对象
67 67
      * @return
68 68
      */
69
-    @RequestMapping(value="/taRole",method= RequestMethod.POST)
69
+    @RequestMapping(value="/admin/taRole",method= RequestMethod.POST)
70 70
     public ResponseBean taRoleAdd(@RequestBody TaRole taRole){
71 71
         ResponseBean responseBean = new ResponseBean();
72 72
         try {
@@ -111,24 +111,18 @@ public class TaRoleController extends BaseController {
111 111
      * @param taRole 实体对象
112 112
      * @return
113 113
      */
114
-    @RequestMapping(value="/taRole/{id}",method= RequestMethod.PUT)
114
+    @RequestMapping(value="/admin/editAndAddRole/{id}",method= RequestMethod.POST)
115 115
     public ResponseBean taRoleUpdate(@PathVariable Integer id,
116
-                                        @RequestBody TaRole taRole){
116
+                                        @RequestBody TaRole taRole) {
117 117
         ResponseBean responseBean = new ResponseBean();
118
-        try {
119
-            if (iTaRoleService.updateById(taRole)){
120
-                responseBean.addSuccess(taRole);
121
-            }else {
122
-                responseBean.addError("fail");
123
-            }
124
-        }catch (Exception e){
125
-            e.printStackTrace();
126
-            logger.error("taRoleUpdate -=- {}",e.toString());
127
-            responseBean.addError(e.getMessage());
118
+        if (null==id){
119
+            iTaRoleService.save(taRole);
120
+        }else{
121
+            iTaRoleService.updateById(taRole);
128 122
         }
123
+        responseBean.addSuccess("成果");
129 124
         return responseBean;
130 125
     }
131
-
132 126
     /**
133 127
      * 根据id查询对象
134 128
      * @param id  实体ID
@@ -164,10 +158,11 @@ public class TaRoleController extends BaseController {
164 158
     /**
165 159
      * 查询当前角色信息
166 160
      */
167
-    @RequestMapping(value="/admin/taRole/details/{id}",method= RequestMethod.PUT)
161
+    @RequestMapping(value="/admin/taRole/details/{id}",method= RequestMethod.GET)
168 162
     public ResponseBean taRoleDetails(@PathVariable Integer id,HttpServletRequest request){
169 163
         ResponseBean responseBean = new ResponseBean();
170
-       TaRole taRole = iTaRoleService.taRoleDetails(id,getOrgId(request));
164
+        TaRole taRole = iTaRoleService.taRoleDetails(id,getOrgId(request));
165
+        responseBean.addSuccess(taRole);
171 166
         return responseBean;
172 167
     }
173 168
 }

+ 7
- 0
src/main/java/com/huiju/estateagents/entity/SysMenu.java 查看文件

@@ -8,6 +8,7 @@ import lombok.EqualsAndHashCode;
8 8
 import lombok.experimental.Accessors;
9 9
 
10 10
 import java.io.Serializable;
11
+import java.util.ArrayList;
11 12
 import java.util.List;
12 13
 
13 14
 /**
@@ -82,4 +83,10 @@ public class SysMenu implements Serializable {
82 83
      */
83 84
     @TableField(exist = false)
84 85
     private List<Integer> roles;
86
+
87
+    /**
88
+     * 菜单下的按钮
89
+     */
90
+    @TableField(exist = false)
91
+    private List<SysButtonInMenu> sysButtonInMenu;
85 92
 }

+ 15
- 0
src/main/java/com/huiju/estateagents/entity/TaRole.java 查看文件

@@ -1,6 +1,7 @@
1 1
 package com.huiju.estateagents.entity;
2 2
 
3 3
 import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableField;
4 5
 import com.baomidou.mybatisplus.annotation.TableId;
5 6
 import lombok.Data;
6 7
 import lombok.EqualsAndHashCode;
@@ -8,6 +9,8 @@ import lombok.experimental.Accessors;
8 9
 
9 10
 import java.io.Serializable;
10 11
 import java.time.LocalDateTime;
12
+import java.util.ArrayList;
13
+import java.util.List;
11 14
 
12 15
 /**
13 16
  * <p>
@@ -55,5 +58,17 @@ public class TaRole implements Serializable {
55 58
      */
56 59
     private LocalDateTime createDate;
57 60
 
61
+    /**
62
+     * 当前角色菜单
63
+     */
64
+    @TableField(exist = false)
65
+    private List<SysMenu> sysMenuList;
66
+
67
+    /**
68
+     * 当前按钮
69
+     */
70
+    @TableField(exist = false)
71
+    private List<SysButtonInMenu> sysButtonInMenu;
72
+
58 73
 
59 74
 }

+ 28
- 4
src/main/java/com/huiju/estateagents/service/impl/TaRoleServiceImpl.java 查看文件

@@ -2,14 +2,19 @@ package com.huiju.estateagents.service.impl;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5
+import com.huiju.estateagents.entity.SysButtonInMenu;
6
+import com.huiju.estateagents.entity.SysMenu;
5 7
 import com.huiju.estateagents.entity.TaRole;
6 8
 import com.huiju.estateagents.entity.TaRoleMenu;
9
+import com.huiju.estateagents.mapper.SysButtonInMenuMapper;
10
+import com.huiju.estateagents.mapper.SysMenuMapper;
7 11
 import com.huiju.estateagents.mapper.TaRoleMapper;
8 12
 import com.huiju.estateagents.mapper.TaRoleMenuMapper;
9 13
 import com.huiju.estateagents.service.ITaRoleService;
10 14
 import org.springframework.beans.factory.annotation.Autowired;
11 15
 import org.springframework.stereotype.Service;
12 16
 
17
+import java.util.ArrayList;
13 18
 import java.util.List;
14 19
 
15 20
 /**
@@ -28,6 +33,12 @@ public class TaRoleServiceImpl extends ServiceImpl<TaRoleMapper, TaRole> impleme
28 33
     @Autowired
29 34
     TaRoleMenuMapper taRoleMenuMapper;
30 35
 
36
+    @Autowired
37
+    SysMenuMapper sysMenuMapper;
38
+
39
+    @Autowired
40
+    SysButtonInMenuMapper sysButtonInMenuMapper;
41
+
31 42
     @Override
32 43
     public List<TaRole> getRolesByUser(Integer userId) {
33 44
         return taRoleMapper.getRolesByUser(userId);
@@ -37,9 +48,22 @@ public class TaRoleServiceImpl extends ServiceImpl<TaRoleMapper, TaRole> impleme
37 48
     public TaRole taRoleDetails(Integer id,Integer orgId) {
38 49
         TaRole taRole = taRoleMapper.selectById(id);
39 50
         // 查询当前角色的所有菜单
40
-        QueryWrapper<TaRoleMenu> taRoleMenu= new QueryWrapper<>();
41
-        taRoleMenu.eq("role_id",id);
42
-        taRoleMenuMapper.selectList(taRoleMenu);
51
+        QueryWrapper<TaRoleMenu> taRoleMenuQuery= new QueryWrapper<>();
52
+        taRoleMenuQuery.eq("role_id",id);
53
+       List<TaRoleMenu> taRoleMenusList = taRoleMenuMapper.selectList(taRoleMenuQuery);
54
+       // 同过menu_id查询当前菜单
55
+         List<SysMenu> sysMenuList = new ArrayList<>();
56
+        for (TaRoleMenu taRoleMenu :taRoleMenusList){
57
+            SysMenu sysMenu = sysMenuMapper.selectById(taRoleMenu.getMenuId());
58
+            sysMenuList.add(sysMenu);
59
+            // 查询按钮
60
+            QueryWrapper<SysButtonInMenu> sysButtonInMenuQuery = new QueryWrapper<>();
61
+            sysButtonInMenuQuery.eq("menu_id",sysMenu.getMenuId());
62
+            List<SysButtonInMenu> sysButtonInMenuList= sysButtonInMenuMapper.selectList(sysButtonInMenuQuery);
63
+            sysMenu.setSysButtonInMenu(sysButtonInMenuList);
64
+
65
+        }
66
+        taRole.setSysMenuList(sysMenuList);
43 67
         return taRole;
44 68
     }
45
-}
69
+}