dingxin 5 vuotta sitten
vanhempi
commit
2394866eec

+ 5
- 1
src/main/java/com/huiju/estateagents/center/taUser/controller/TaUserAuthMenuController.java Näytä tiedosto

6
 import com.huiju.estateagents.base.BaseController;
6
 import com.huiju.estateagents.base.BaseController;
7
 import com.huiju.estateagents.base.ResponseBean;
7
 import com.huiju.estateagents.base.ResponseBean;
8
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
8
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
9
+import com.huiju.estateagents.entity.SysButtonInMenu;
9
 import com.huiju.estateagents.entity.SysMenu;
10
 import com.huiju.estateagents.entity.SysMenu;
10
 import com.huiju.estateagents.entity.TaRole;
11
 import com.huiju.estateagents.entity.TaRole;
11
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.beans.factory.annotation.Autowired;
65
         Integer userId = Object.getInteger("id");
66
         Integer userId = Object.getInteger("id");
66
         JSONArray JSONArray = Object.getJSONArray("sysMenu");
67
         JSONArray JSONArray = Object.getJSONArray("sysMenu");
67
         List<SysMenu> sysMenuList = JSONArray.toJavaList(SysMenu.class);
68
         List<SysMenu> sysMenuList = JSONArray.toJavaList(SysMenu.class);
68
-        return iTaUserAuthMenuService.updateUserAuthMenu(userId, sysMenuList,name,getOrgId(request));
69
+
70
+        JSONArray buttonArray = Object.getJSONArray("sysButton");
71
+        List<SysButtonInMenu> sysButtonInMenuList = buttonArray.toJavaList(SysButtonInMenu.class);
72
+        return iTaUserAuthMenuService.updateUserAuthMenu(userId, sysMenuList,name,getOrgId(request),sysButtonInMenuList);
69
     }
73
     }
70
 }
74
 }

+ 2
- 1
src/main/java/com/huiju/estateagents/center/taUser/service/ITaUserAuthMenuService.java Näytä tiedosto

2
 
2
 
3
 import com.baomidou.mybatisplus.extension.service.IService;
3
 import com.baomidou.mybatisplus.extension.service.IService;
4
 import com.huiju.estateagents.base.ResponseBean;
4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.entity.SysButtonInMenu;
5
 import com.huiju.estateagents.entity.SysMenu;
6
 import com.huiju.estateagents.entity.SysMenu;
6
 
7
 
7
 import java.util.List;
8
 import java.util.List;
18
 
19
 
19
     ResponseBean getAllMenu(Integer pageNum, Integer pageSize);
20
     ResponseBean getAllMenu(Integer pageNum, Integer pageSize);
20
 
21
 
21
-    ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList,String name,Integer orgid);
22
+    ResponseBean updateUserAuthMenu(Integer userId, List<SysMenu> sysMenuList,String name,Integer orgid,List<SysButtonInMenu> sysButtonInMenuList);
22
 }
23
 }

+ 32
- 10
src/main/java/com/huiju/estateagents/center/taUser/service/impl/TaUserAuthMenuServiceImpl.java Näytä tiedosto

9
 import com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper;
9
 import com.huiju.estateagents.center.taUser.mapper.TaUserAuthMenuMapper;
10
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
10
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
11
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
11
 import com.huiju.estateagents.center.taUser.service.ITaUserAuthMenuService;
12
-import com.huiju.estateagents.entity.SysMenu;
13
-import com.huiju.estateagents.entity.TaRole;
14
-import com.huiju.estateagents.entity.TaRoleMenu;
12
+import com.huiju.estateagents.entity.*;
13
+import com.huiju.estateagents.mapper.TaRoleButtonMapper;
15
 import com.huiju.estateagents.mapper.TaRoleMapper;
14
 import com.huiju.estateagents.mapper.TaRoleMapper;
16
 import com.huiju.estateagents.mapper.TaRoleMenuMapper;
15
 import com.huiju.estateagents.mapper.TaRoleMenuMapper;
17
 import org.springframework.beans.factory.annotation.Autowired;
16
 import org.springframework.beans.factory.annotation.Autowired;
18
 import org.springframework.stereotype.Service;
17
 import org.springframework.stereotype.Service;
19
 
18
 
19
+import java.time.LocalDateTime;
20
 import java.util.ArrayList;
20
 import java.util.ArrayList;
21
 import java.util.Arrays;
21
 import java.util.Arrays;
22
 import java.util.List;
22
 import java.util.List;
41
     @Autowired
41
     @Autowired
42
     private  TaRoleMapper taRoleMapper;
42
     private  TaRoleMapper taRoleMapper;
43
 
43
 
44
+    @Autowired
45
+    private TaRoleButtonMapper taRoleButtonMapper;
46
+
44
     /**
47
     /**
45
      * 根据用户id获取授权菜单
48
      * 根据用户id获取授权菜单
46
      * @param pageNum
49
      * @param pageNum
77
     }
80
     }
78
 
81
 
79
     @Override
82
     @Override
80
-    public ResponseBean updateUserAuthMenu(Integer roleId, List<SysMenu> sysMenuList,String name,Integer orgid) {
83
+    public ResponseBean updateUserAuthMenu(Integer roleId, List<SysMenu> sysMenuList,String name,Integer orgId,List<SysButtonInMenu> sysButtonInMenuList) {
81
         ResponseBean responseBean = new ResponseBean();
84
         ResponseBean responseBean = new ResponseBean();
82
         if (null == roleId){
85
         if (null == roleId){
83
-            Boolean isA = addUserAuthMenu( sysMenuList,name,orgid);
84
-            responseBean.addSuccess(isA==true?"成功":"失败");
86
+            addUserAuthMenu( sysMenuList,name,orgId,sysButtonInMenuList);
85
             return responseBean;
87
             return responseBean;
86
         }
88
         }
87
         try {
89
         try {
97
             TaRole taRole = new TaRole();
99
             TaRole taRole = new TaRole();
98
             taRole.setRoleId(roleId);
100
             taRole.setRoleId(roleId);
99
             taRole.setRoleName(name);
101
             taRole.setRoleName(name);
100
-            taRole.setOrgId(orgid);
101
             taRoleMapper.updateById(taRole);
102
             taRoleMapper.updateById(taRole);
102
-            responseBean.addSuccess("操作成功");
103
+
104
+            // 当前角色的所有按钮再重新插入
105
+
106
+            taRoleButtonMapper.deleteCurrentBut(roleId);
107
+            for (SysButtonInMenu sysButtonInMenu :sysButtonInMenuList) {
108
+                TaRoleButton taRoleButton = new TaRoleButton();
109
+                taRoleButton.setRoleId(taRole.getRoleId());
110
+                taRoleButton.setBtnId(sysButtonInMenu.getBtnId());
111
+                taRoleButtonMapper.insert(taRoleButton);
112
+            }
113
+                responseBean.addSuccess("操作成功");
103
             return responseBean;
114
             return responseBean;
104
         } catch (Exception e) {
115
         } catch (Exception e) {
105
             responseBean.addSuccess("操作失败");
116
             responseBean.addSuccess("操作失败");
108
         }
119
         }
109
     }
120
     }
110
 
121
 
111
-    public Boolean addUserAuthMenu(List<SysMenu> sysMenuList,String name,Integer orgid) {
122
+    public Boolean addUserAuthMenu(List<SysMenu> sysMenuList,String name,Integer orgId,List<SysButtonInMenu> sysButtonInMenuList) {
112
         ResponseBean responseBean = new ResponseBean();
123
         ResponseBean responseBean = new ResponseBean();
113
         try{
124
         try{
125
+            // 新增角色
114
             TaRole taRole = new TaRole();
126
             TaRole taRole = new TaRole();
115
             taRole.setRoleName(name);
127
             taRole.setRoleName(name);
116
-            taRole.setOrgId(orgid);
128
+            taRole.setOrgId(orgId);
129
+            taRole.setCreateDate(LocalDateTime.now());
117
             taRoleMapper.insert(taRole);
130
             taRoleMapper.insert(taRole);
131
+
132
+            // 新增角色需要的菜单
118
           for (SysMenu sysMenu: sysMenuList){
133
           for (SysMenu sysMenu: sysMenuList){
119
               TaRoleMenu taRoleMenu = new TaRoleMenu();
134
               TaRoleMenu taRoleMenu = new TaRoleMenu();
120
               taRoleMenu.setRoleId(taRole.getRoleId());
135
               taRoleMenu.setRoleId(taRole.getRoleId());
121
               taRoleMenu.setMenuId(sysMenu.getMenuId());
136
               taRoleMenu.setMenuId(sysMenu.getMenuId());
122
               taRoleMenuMapper.insert(taRoleMenu);
137
               taRoleMenuMapper.insert(taRoleMenu);
138
+          }
139
+          // 新增角色按钮
140
+          for (SysButtonInMenu sysButtonInMenu :sysButtonInMenuList){
141
+              TaRoleButton  taRoleButton = new TaRoleButton();
142
+              taRoleButton.setRoleId(taRole.getRoleId());
143
+              taRoleButton.setBtnId(sysButtonInMenu.getBtnId());
144
+              taRoleButtonMapper.insert(taRoleButton);
123
           }
145
           }
124
             responseBean.addSuccess("操作成功");
146
             responseBean.addSuccess("操作成功");
125
             return  true;
147
             return  true;

+ 2
- 0
src/main/java/com/huiju/estateagents/mapper/TaRoleButtonMapper.java Näytä tiedosto

3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
 import com.huiju.estateagents.entity.TaRoleButton;
4
 import com.huiju.estateagents.entity.TaRoleButton;
5
 import org.apache.ibatis.annotations.Mapper;
5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
6
 
7
 
7
 /**
8
 /**
8
  * <p>
9
  * <p>
15
 @Mapper
16
 @Mapper
16
 public interface TaRoleButtonMapper extends BaseMapper<TaRoleButton> {
17
 public interface TaRoleButtonMapper extends BaseMapper<TaRoleButton> {
17
 
18
 
19
+    void deleteCurrentBut(@Param("roleId") Integer roleId);
18
 }
20
 }

+ 17
- 13
src/main/java/com/huiju/estateagents/service/impl/TaRoleServiceImpl.java Näytä tiedosto

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.extension.service.impl.ServiceImpl;
4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5
-import com.huiju.estateagents.entity.SysButtonInMenu;
6
-import com.huiju.estateagents.entity.SysMenu;
7
-import com.huiju.estateagents.entity.TaRole;
8
-import com.huiju.estateagents.entity.TaRoleMenu;
9
-import com.huiju.estateagents.mapper.SysButtonInMenuMapper;
10
-import com.huiju.estateagents.mapper.SysMenuMapper;
11
-import com.huiju.estateagents.mapper.TaRoleMapper;
12
-import com.huiju.estateagents.mapper.TaRoleMenuMapper;
5
+import com.huiju.estateagents.entity.*;
6
+import com.huiju.estateagents.mapper.*;
13
 import com.huiju.estateagents.service.ITaRoleService;
7
 import com.huiju.estateagents.service.ITaRoleService;
14
 import org.springframework.beans.factory.annotation.Autowired;
8
 import org.springframework.beans.factory.annotation.Autowired;
15
 import org.springframework.stereotype.Service;
9
 import org.springframework.stereotype.Service;
39
     @Autowired
33
     @Autowired
40
     SysButtonInMenuMapper sysButtonInMenuMapper;
34
     SysButtonInMenuMapper sysButtonInMenuMapper;
41
 
35
 
36
+    @Autowired
37
+    TaRoleButtonMapper taRoleButtonMapper;
38
+
42
     @Override
39
     @Override
43
     public List<TaRole> getRolesByUser(Integer userId) {
40
     public List<TaRole> getRolesByUser(Integer userId) {
44
         return taRoleMapper.getRolesByUser(userId);
41
         return taRoleMapper.getRolesByUser(userId);
56
         for (TaRoleMenu taRoleMenu :taRoleMenusList){
53
         for (TaRoleMenu taRoleMenu :taRoleMenusList){
57
             SysMenu sysMenu = sysMenuMapper.selectById(taRoleMenu.getMenuId());
54
             SysMenu sysMenu = sysMenuMapper.selectById(taRoleMenu.getMenuId());
58
             sysMenuList.add(sysMenu);
55
             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
 
56
 
57
+            // 查询按钮
58
+            QueryWrapper<TaRoleButton> taRoleButtonQuery= new QueryWrapper<>();
59
+            taRoleButtonQuery.eq("role_id",id);
60
+            List<TaRoleButton> taRoleButtonList= taRoleButtonMapper.selectList(taRoleButtonQuery);
61
+            List<SysButtonInMenu> sysButtonInArr = new ArrayList<>();
62
+            for(TaRoleButton taRoleButton :taRoleButtonList){
63
+                QueryWrapper<SysButtonInMenu> sysButtonInMenuQuery = new QueryWrapper<>();
64
+                sysButtonInMenuQuery.eq("btn_id",taRoleButton.getBtnId());
65
+                SysButtonInMenu sysButtonInMenuList= sysButtonInMenuMapper.selectOne(sysButtonInMenuQuery);
66
+                sysButtonInArr.add(sysButtonInMenuList);
67
+            }
68
+            sysMenu.setSysButtonInMenu(sysButtonInArr);
65
         }
69
         }
66
         taRole.setSysMenuList(sysMenuList);
70
         taRole.setSysMenuList(sysMenuList);
67
         return taRole;
71
         return taRole;

+ 3
- 1
src/main/resources/mapper/TaRoleButtonMapper.xml Näytä tiedosto

1
 <?xml version="1.0" encoding="UTF-8"?>
1
 <?xml version="1.0" encoding="UTF-8"?>
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.huiju.estateagents.mapper.TaRoleButtonMapper">
3
 <mapper namespace="com.huiju.estateagents.mapper.TaRoleButtonMapper">
4
-
4
+<delete  id="deleteCurrentBut">
5
+    delete from ta_role_button where ta_role_button.role_id = #{roleId}
6
+</delete >
5
 </mapper>
7
 </mapper>