Commit 1320f7dcedfe301030533cc27b6aba5e691a86fd

Authored by jiangjiazhi
1 parent 331a2defa8

修改查询权限为批量

Showing 5 changed files with 117 additions and 85 deletions

platform-biz-service/src/main/java/com/lyms/platform/permission/dao/PermissionsMapper.java View file @ 1320f7d
... ... @@ -18,5 +18,7 @@
18 18  
19 19 public List<Permissions> queryPermissions(PermissionsQuery query);
20 20  
  21 + List<Permissions> queryPermissionByRoleIds(Integer roleIds);
  22 +
21 23 }
platform-biz-service/src/main/java/com/lyms/platform/permission/service/PermissionsService.java View file @ 1320f7d
... ... @@ -17,6 +17,6 @@
17 17 public int queryPermissionsCount(PermissionsQuery query);
18 18  
19 19 public List<Permissions> queryPermissions(PermissionsQuery query);
20   -
  20 + List<Permissions> queryPermissionByRoleIds(Integer roleIds);
21 21 }
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/PermissionsServiceImpl.java View file @ 1320f7d
... ... @@ -7,27 +7,49 @@
7 7 import org.springframework.beans.factory.annotation.Autowired;
8 8 import org.springframework.stereotype.Service;
9 9  
10   -import java.util.Date;
11 10 import java.util.List;
12 11  
13 12 @Service
14 13 public class PermissionsServiceImpl implements PermissionsService {
15 14  
16   -@Autowired
17   -private PermissionsMapper permissionsMapper;
  15 + @Autowired
  16 + private PermissionsMapper permissionsMapper;
18 17  
19   -@Override
20   -public void addPermissions(Permissions obj){permissionsMapper.addPermissions(obj);}
21   -@Override
22   -public void updatePermissions(Permissions obj){permissionsMapper.updatePermissions(obj);}
23   -@Override
24   -public void deletePermissions (Integer id){permissionsMapper.deletePermissions(id);}
25   -@Override
26   -public Permissions getPermissions (Integer id){return permissionsMapper.getPermissions(id);}
27   -@Override
28   -public int queryPermissionsCount (PermissionsQuery query){return permissionsMapper.queryPermissionsCount(query);}
29   -@Override
30   -public List<Permissions> queryPermissions (PermissionsQuery query){if (query.getNeed() != null) {query.mysqlBuild(permissionsMapper.queryPermissionsCount(query));}return permissionsMapper.queryPermissions(query);}
  18 + @Override
  19 + public void addPermissions(Permissions obj) {
  20 + permissionsMapper.addPermissions(obj);
  21 + }
31 22  
  23 + @Override
  24 + public void updatePermissions(Permissions obj) {
  25 + permissionsMapper.updatePermissions(obj);
  26 + }
  27 +
  28 + @Override
  29 + public void deletePermissions(Integer id) {
  30 + permissionsMapper.deletePermissions(id);
  31 + }
  32 +
  33 + @Override
  34 + public Permissions getPermissions(Integer id) {
  35 + return permissionsMapper.getPermissions(id);
  36 + }
  37 +
  38 + @Override
  39 + public int queryPermissionsCount(PermissionsQuery query) {
  40 + return permissionsMapper.queryPermissionsCount(query);
  41 + }
  42 +
  43 + @Override
  44 + public List<Permissions> queryPermissions(PermissionsQuery query) {
  45 + if (query.getNeed() != null) {
  46 + query.mysqlBuild(permissionsMapper.queryPermissionsCount(query));
  47 + }
  48 + return permissionsMapper.queryPermissions(query);
  49 + }
  50 +
  51 + public List<Permissions> queryPermissionByRoleIds(Integer roleIds) {
  52 + return permissionsMapper.queryPermissionByRoleIds(roleIds);
  53 + }
32 54 }
platform-biz-service/src/main/resources/mainOrm/Permissions.xml View file @ 1320f7d
... ... @@ -180,7 +180,10 @@
180 180 <include refid="PermissionsCondition" />
181 181 </select>
182 182  
183   -
184   -
  183 +<select id="queryPermissionByRoleIds" parameterType="java.lang.Integer" resultMap="PermissionsResultMap">
  184 + select b.* from role_permission_maps a, permissions b where a.yn=1 and b.yn=1 and a.role_id =
  185 + #{weight,jdbcType=INTEGER}
  186 + and a.permission_id=b.id ORDER BY weight
  187 +</select>
185 188 </mapper>
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/RolesController.java View file @ 1320f7d
... ... @@ -12,6 +12,7 @@
12 12 import com.lyms.platform.operate.web.result.FrontEndResult;
13 13 import com.lyms.platform.permission.model.*;
14 14 import com.lyms.platform.permission.service.*;
  15 +import org.apache.commons.collections.CollectionUtils;
15 16 import org.apache.commons.lang.StringUtils;
16 17 import org.slf4j.Logger;
17 18 import org.slf4j.LoggerFactory;
... ... @@ -22,7 +23,9 @@
22 23  
23 24 import javax.servlet.http.HttpServletRequest;
24 25 import javax.servlet.http.HttpServletResponse;
25   -import java.util.*;
  26 +import java.util.ArrayList;
  27 +import java.util.Date;
  28 +import java.util.List;
26 29  
27 30 /**
28 31 * Created by Administrator on 2015/9/29 0029.
... ... @@ -57,7 +60,7 @@
57 60 stopWatch.start("get role by id");
58 61 //判断是否存在该角色
59 62 Roles roles = rolesService.getRoles(id);
60   - if(null == roles || id == null || StringUtils.isBlank(ids)) {
  63 + if (null == roles || id == null || StringUtils.isBlank(ids)) {
61 64 ResultUtils.buildParameterErrorResultAndWrite(response);
62 65 return;
63 66 }
... ... @@ -82,8 +85,7 @@
82 85 for (String tmp : roleArrayIds) {
83 86  
84 87  
85   -
86   - Permissions permissions = permissionsService.getPermissions(Integer.valueOf(tmp));
  88 + Permissions permissions = permissionsService.getPermissions(Integer.valueOf(tmp));
87 89 //权限是否存在
88 90 if (permissions == null || permissions.getYn() == YnEnums.NO.getId()) {
89 91 continue;
90 92  
91 93  
... ... @@ -104,20 +106,17 @@
104 106 }
105 107  
106 108  
107   -
108   -
109   -
110 109 /**
111 110 * 角色绑定访问权限
112 111 */
113 112 @RequestMapping(value = "/roles/dataAccessByRole", method = RequestMethod.POST)
114 113 @TokenRequired
115 114 public void updateUserPermission(HttpServletResponse response,
116   - @RequestParam(value = "id") Integer id,
117   - @RequestParam(value = "type") Integer accessPermType) {
  115 + @RequestParam(value = "id") Integer id,
  116 + @RequestParam(value = "type") Integer accessPermType) {
118 117 Roles roles = rolesService.getRoles(id);
119 118  
120   - Assert.notNull(roles,"角色为空.");
  119 + Assert.notNull(roles, "角色为空.");
121 120  
122 121 roles.setPermissiontype(Integer.valueOf(accessPermType));
123 122  
124 123  
125 124  
126 125  
127 126  
... ... @@ -125,24 +124,26 @@
125 124 ResultUtils.buildSuccessResultAndWrite(response);
126 125  
127 126 }
  127 +
128 128 /**
129   - * 创建用户角色
  129 + * 创建用户角色
  130 + *
130 131 * @param response
131 132 */
132   - @RequestMapping(value = "/userRoles",method = RequestMethod.POST)
  133 + @RequestMapping(value = "/userRoles", method = RequestMethod.POST)
133 134 @TokenRequired
134 135 public void addUserRoles(HttpServletResponse response,
135   - HttpServletRequest request,
136   - @RequestParam(value = "name")String name,
137   - @RequestParam(value = "enable")Integer enable,
138   - @RequestParam(value = "remarks", required = false)String remarks,
139   - @RequestParam(value = "shortCode", required = false)String shortCode) {
  136 + HttpServletRequest request,
  137 + @RequestParam(value = "name") String name,
  138 + @RequestParam(value = "enable") Integer enable,
  139 + @RequestParam(value = "remarks", required = false) String remarks,
  140 + @RequestParam(value = "shortCode", required = false) String shortCode) {
140 141  
141 142 //获取登录用户
142 143 LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
143 144 Users users = usersService.getUsers(loginState.getId());
144 145  
145   - if ( StringUtils.isBlank(name) || null == users) {
  146 + if (StringUtils.isBlank(name) || null == users) {
146 147 ResultUtils.buildParameterErrorResultAndWrite(response);
147 148 return;
148 149 }
... ... @@ -150,8 +151,8 @@
150 151 RolesQuery rolesQuery = new RolesQuery();
151 152 rolesQuery.setYn(YnEnums.YES.getId());
152 153 rolesQuery.setName(name);
153   - if(0 < rolesService.queryRolesCount(rolesQuery)) {
154   - ResultUtils.buildResultAndWrite(response,ErrorCodeConstants.NAME_EXIST, "角色名称已存在");
  154 + if (0 < rolesService.queryRolesCount(rolesQuery)) {
  155 + ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.NAME_EXIST, "角色名称已存在");
155 156 return;
156 157 }
157 158  
158 159  
159 160  
... ... @@ -173,17 +174,18 @@
173 174  
174 175  
175 176 /**
176   - * 创建管理员角色
  177 + * 创建管理员角色
  178 + *
177 179 * @param response
178 180 */
179   - @RequestMapping(value = "/adminRoles",method = RequestMethod.POST)
  181 + @RequestMapping(value = "/adminRoles", method = RequestMethod.POST)
180 182 @TokenRequired
181 183 public void addAdminRoles(HttpServletResponse response,
182   - HttpServletRequest request,
183   - @RequestParam(value = "name")String name,
184   - @RequestParam(value = "enable")Integer enable,
185   - @RequestParam(value = "remarks", required = false)String remarks,
186   - @RequestParam(value = "shortCode", required = false)String shortCode) {
  184 + HttpServletRequest request,
  185 + @RequestParam(value = "name") String name,
  186 + @RequestParam(value = "enable") Integer enable,
  187 + @RequestParam(value = "remarks", required = false) String remarks,
  188 + @RequestParam(value = "shortCode", required = false) String shortCode) {
187 189  
188 190 //获取登录用户
189 191 LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
... ... @@ -197,7 +199,7 @@
197 199 RolesQuery rolesQuery = new RolesQuery();
198 200 rolesQuery.setYn(YnEnums.YES.getId());
199 201 rolesQuery.setName(name);
200   - if(0 < rolesService.queryRolesCount(rolesQuery)) {
  202 + if (0 < rolesService.queryRolesCount(rolesQuery)) {
201 203 ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.NAME_EXIST, "角色名称已存在");
202 204 return;
203 205 }
204 206  
205 207  
206 208  
207 209  
208 210  
... ... @@ -221,29 +223,29 @@
221 223 /**
222 224 * 角色修改
223 225 */
224   - @RequestMapping(value = "/roles/{id}",method = RequestMethod.PUT)
  226 + @RequestMapping(value = "/roles/{id}", method = RequestMethod.PUT)
225 227 @TokenRequired
226   - public void updateRoles(HttpServletResponse response ,@PathVariable Integer id,
227   - @RequestParam(value = "name",required = false)String name,
228   - @RequestParam(value = "enable",required = false)Integer enable,
229   - @RequestParam(value = "remarks",required = false)String remarks,
230   - @RequestParam(value = "shortCode",required = false)String shortCode) {
  228 + public void updateRoles(HttpServletResponse response, @PathVariable Integer id,
  229 + @RequestParam(value = "name", required = false) String name,
  230 + @RequestParam(value = "enable", required = false) Integer enable,
  231 + @RequestParam(value = "remarks", required = false) String remarks,
  232 + @RequestParam(value = "shortCode", required = false) String shortCode) {
231 233  
232   - if ( StringUtils.isBlank(name) || null == id ) {
  234 + if (StringUtils.isBlank(name) || null == id) {
233 235 ResultUtils.buildParameterErrorResultAndWrite(response);
234 236 return;
235 237 }
236 238 Roles roles = rolesService.getRoles(id);
237   - if (roles==null){
  239 + if (roles == null) {
238 240 new BusinessException("", "角色信息不存在.");
239 241 return;
240 242 }
241 243  
242   - if(!roles.getName().equals(name)) {
  244 + if (!roles.getName().equals(name)) {
243 245 RolesQuery rolesQuery = new RolesQuery();
244 246 rolesQuery.setYn(YnEnums.YES.getId());
245 247 rolesQuery.setName(name);
246   - if(0 < rolesService.queryRolesCount(rolesQuery)) {
  248 + if (0 < rolesService.queryRolesCount(rolesQuery)) {
247 249 ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.NAME_EXIST, "角色名称已存在");
248 250 return;
249 251 }
250 252  
251 253  
... ... @@ -261,16 +263,16 @@
261 263 /**
262 264 * 角色删除
263 265 */
264   - @RequestMapping(value = "/roles/{id}",method = RequestMethod.DELETE)
  266 + @RequestMapping(value = "/roles/{id}", method = RequestMethod.DELETE)
265 267 @TokenRequired
266   - public void deleteRoles(HttpServletResponse response ,@PathVariable(value = "id")Integer id) {
  268 + public void deleteRoles(HttpServletResponse response, @PathVariable(value = "id") Integer id) {
267 269 if (null == id) {
268 270 ResultUtils.buildIdIsNull(response);
269 271 return;
270 272 }
271 273  
272 274 Roles roles = rolesService.getRoles(id);
273   - if (roles==null){
  275 + if (roles == null) {
274 276 ResultUtils.buildIdResultData(response);
275 277 return;
276 278 }
... ... @@ -283,8 +285,8 @@
283 285 UserRoleMapsQuery userRoleMapsQuery = new UserRoleMapsQuery();
284 286 userRoleMapsQuery.setRoleId(id);
285 287 List<UserRoleMaps> userRoleMapses = userRoleMapsService.queryUserRoleMaps(userRoleMapsQuery);
286   - if(null != userRoleMapses) {
287   - for(UserRoleMaps userRoleMaps : userRoleMapses) {
  288 + if (null != userRoleMapses) {
  289 + for (UserRoleMaps userRoleMaps : userRoleMapses) {
288 290 userRoleMaps.setYn(YnEnums.NO.getId());
289 291 userRoleMapsService.updateUserRoleMaps(userRoleMaps);
290 292 }
... ... @@ -293,7 +295,7 @@
293 295 RolePermissionMapsQuery rolePermissionMapsQuery = new RolePermissionMapsQuery();
294 296 rolePermissionMapsQuery.setRoleId(id);
295 297 List<RolePermissionMaps> rolePermissionMapsList = rolePermissionMapsService.queryRolePermissionMaps(rolePermissionMapsQuery);
296   - if(null != rolePermissionMapsList) {
  298 + if (null != rolePermissionMapsList) {
297 299 for (RolePermissionMaps rolePermissionMaps : rolePermissionMapsList) {
298 300 rolePermissionMaps.setYn(YnEnums.NO.getId());
299 301 rolePermissionMapsService.updateRolePermissionMaps(rolePermissionMaps);//把状态设置成无效
... ... @@ -309,7 +311,7 @@
309 311 */
310 312 @RequestMapping(value = "/roles/enable", method = RequestMethod.POST)
311 313 @TokenRequired
312   - public void enableUsers(HttpServletResponse response,@RequestParam Integer id, @RequestParam Integer flag) {
  314 + public void enableUsers(HttpServletResponse response, @RequestParam Integer id, @RequestParam Integer flag) {
313 315 if (null == id && null == flag) {
314 316 ResultUtils.buildIdIsNull(response);
315 317 return;
... ... @@ -317,7 +319,7 @@
317 319  
318 320 //判断是否存在
319 321 Roles roles = rolesService.getRoles(id);
320   - if(null == roles) {
  322 + if (null == roles) {
321 323 ResultUtils.buildIdIsNull(response);
322 324 return;
323 325 }
... ... @@ -336,11 +338,11 @@
336 338 @ResponseBody
337 339 @TokenRequired
338 340 public FrontEndResult getUserList(HttpServletResponse response,
339   - @RequestParam(value = "keyword",required = false) String keyword,
340   - @RequestParam(value = "page",required = false) Integer page,
341   - @RequestParam(value = "limit",required = false) Integer limit,
342   - @RequestParam(value = "orgId", required = false) Integer orgId,
343   - @RequestParam(value = "enable", required = false) Integer enable) {
  341 + @RequestParam(value = "keyword", required = false) String keyword,
  342 + @RequestParam(value = "page", required = false) Integer page,
  343 + @RequestParam(value = "limit", required = false) Integer limit,
  344 + @RequestParam(value = "orgId", required = false) Integer orgId,
  345 + @RequestParam(value = "enable", required = false) Integer enable) {
344 346  
345 347 limit = limit == null ? 10 : limit;
346 348 page = page == null ? 1 : page;
... ... @@ -356,10 +358,14 @@
356 358 rolesQuery.setEnable(enable);
357 359  
358 360 List<Roles> roles = rolesService.queryRoles(rolesQuery);
359   - List<Permissions> permissionses = null;
360   - for(Roles roles1 : roles) {
361   - permissionses = new ArrayList<>();
362   - RolePermissionMapsQuery rolePermissionMapsQuery = new RolePermissionMapsQuery();
  361 + if (CollectionUtils.isNotEmpty(roles)) {
  362 +
  363 +
  364 + List<Permissions> permissionses;
  365 + for (Roles roles1 : roles) {
  366 + permissionses = permissionsService.queryPermissionByRoleIds(roles1.getId());
  367 +
  368 + /* RolePermissionMapsQuery rolePermissionMapsQuery = new RolePermissionMapsQuery();
363 369 rolePermissionMapsQuery.setYn(YnEnums.YES.getId());
364 370 rolePermissionMapsQuery.setRoleId(roles1.getId());
365 371 List<RolePermissionMaps> rolePermissionMapses = rolePermissionMapsService.queryRolePermissionMaps(rolePermissionMapsQuery);
366 372  
... ... @@ -369,12 +375,12 @@
369 375 if(permissions.getYn().equals(YnEnums.NO.getId())) continue;
370 376 permissionses.add(permissions);
371 377 }
372   -
373   - roles1.setPermissions(permissionses);
  378 + */
  379 + roles1.setPermissions(permissionses);
  380 + }
374 381 }
375 382  
376 383  
377   -
378 384 FrontEndResult frontEndResult = new FrontEndResult();
379 385 frontEndResult.setPageInfo(rolesQuery.getPageInfo());
380 386 frontEndResult.setData(roles);
... ... @@ -393,10 +399,10 @@
393 399 @ResponseBody
394 400 @TokenRequired
395 401 public FrontEndResult getAdminList(HttpServletResponse response,
396   - @RequestParam(value = "keyword",required = false) String keyword,
397   - @RequestParam(value = "page",required = false) Integer page,
398   - @RequestParam(value = "limit",required = false) Integer limit,
399   - @RequestParam(value = "enable",required = false) Integer enable) {
  402 + @RequestParam(value = "keyword", required = false) String keyword,
  403 + @RequestParam(value = "page", required = false) Integer page,
  404 + @RequestParam(value = "limit", required = false) Integer limit,
  405 + @RequestParam(value = "enable", required = false) Integer enable) {
400 406  
401 407 limit = limit == null ? 10 : limit;
402 408 page = page == null ? 1 : page;
403 409  
404 410  
405 411  
... ... @@ -414,22 +420,21 @@
414 420 List<Roles> roles = rolesService.queryRoles(rolesQuery);
415 421  
416 422 List<Permissions> permissionses = null;
417   - for(Roles roles1 : roles) {
  423 + for (Roles roles1 : roles) {
418 424 permissionses = new ArrayList<>();
419 425 RolePermissionMapsQuery rolePermissionMapsQuery = new RolePermissionMapsQuery();
420 426 rolePermissionMapsQuery.setYn(YnEnums.YES.getId());
421 427 rolePermissionMapsQuery.setRoleId(roles1.getId());
422 428 List<RolePermissionMaps> rolePermissionMapses = rolePermissionMapsService.queryRolePermissionMaps(rolePermissionMapsQuery);
423 429  
424   - for(RolePermissionMaps rolePermissionMaps : rolePermissionMapses) {
  430 + for (RolePermissionMaps rolePermissionMaps : rolePermissionMapses) {
425 431 Permissions permissions = permissionsService.getPermissions(rolePermissionMaps.getPermissionId());
426   - if(permissions.getYn().equals(YnEnums.NO.getId())) continue;
  432 + if (permissions.getYn().equals(YnEnums.NO.getId())) continue;
427 433 permissionses.add(permissions);
428 434 }
429 435  
430 436 roles1.setPermissions(permissionses);
431 437 }
432   -
433 438  
434 439  
435 440 FrontEndResult frontEndResult = new FrontEndResult();