Commit 949716b95b1584735643924791f89565ada86ce3
1 parent
c1b3adda5c
Exists in
master
and in
6 other branches
a
Showing 1 changed file with 81 additions and 0 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/RolesController.java
View file @
949716b
| ... | ... | @@ -464,6 +464,87 @@ |
| 464 | 464 | } |
| 465 | 465 | |
| 466 | 466 | |
| 467 | + | |
| 468 | + /** | |
| 469 | + * 获取用户角色列表 | |
| 470 | + */ | |
| 471 | + @RequestMapping(value = "/currentUserRoles", method = RequestMethod.GET) | |
| 472 | + @ResponseBody | |
| 473 | + @TokenRequired | |
| 474 | + public FrontEndResult getCurrentUserRoleList(HttpServletResponse response, HttpServletRequest request, | |
| 475 | + @RequestParam(value = "keyword", required = false) String keyword, | |
| 476 | + @RequestParam(value = "page", required = false) Integer page, | |
| 477 | + @RequestParam(value = "limit", required = false) Integer limit, | |
| 478 | + @RequestParam(value = "orgIds", required = false) String orgIds, | |
| 479 | + @RequestParam(value = "enable", required = false) Integer enable) { | |
| 480 | + | |
| 481 | + limit = 200; | |
| 482 | + page = page == null ? 1 : page; | |
| 483 | + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); | |
| 484 | + RolesQuery rolesQuery = new RolesQuery(); | |
| 485 | + rolesQuery.setNeed("true"); | |
| 486 | + rolesQuery.setSort("modified desc"); | |
| 487 | + rolesQuery.setYn(YnEnums.YES.getId()); | |
| 488 | + rolesQuery.setType(1); | |
| 489 | + rolesQuery.setKeyword(keyword); | |
| 490 | + rolesQuery.setPage(page); | |
| 491 | + rolesQuery.setLimit(limit); | |
| 492 | + rolesQuery.setEnable(enable); | |
| 493 | + List list =new ArrayList(); | |
| 494 | + if(StringUtils.isNotEmpty(orgIds)){ | |
| 495 | + String[] as =orgIds.split(","); | |
| 496 | + for(String a :as){ | |
| 497 | + list.add(Integer.valueOf(a)); | |
| 498 | + } | |
| 499 | + } | |
| 500 | + rolesQuery.setOrgIds(list); | |
| 501 | + List<Roles> roles = rolesService.queryRoles(rolesQuery); | |
| 502 | + List<Roles> rolesList = new ArrayList<>(); | |
| 503 | + if (CollectionUtils.isNotEmpty(roles)) { | |
| 504 | + | |
| 505 | + Users users = usersService.getUsers(loginState.getId()); | |
| 506 | + if (users.getType() == 2) { | |
| 507 | + rolesList.addAll(roles); | |
| 508 | + } else { | |
| 509 | + UserRoleMapsQuery userRoleMapsQuery = new UserRoleMapsQuery(); | |
| 510 | + userRoleMapsQuery.setYn(YnEnums.YES.getId()); | |
| 511 | + userRoleMapsQuery.setUserId(users.getId()); | |
| 512 | + List<UserRoleMaps> userRoleMapsList = userRoleMapsService.queryUserRoleMaps(userRoleMapsQuery); | |
| 513 | + List<Integer> onwerRoleIds = new ArrayList<>(); | |
| 514 | + for (UserRoleMaps maps:userRoleMapsList) { | |
| 515 | + onwerRoleIds.add(maps.getRoleId()); | |
| 516 | + } | |
| 517 | + for (Roles roles1 : roles) { | |
| 518 | + if (onwerRoleIds.contains(roles1.getId())) { | |
| 519 | + rolesList.add(roles1); | |
| 520 | + } | |
| 521 | + } | |
| 522 | + } | |
| 523 | + | |
| 524 | + List<Permissions2> permissionses; | |
| 525 | + for (Roles roles1 : rolesList) { | |
| 526 | + permissionses = permissions2Service.queryPermissionByRoleIds1(roles1.getId()); | |
| 527 | + | |
| 528 | + roles1.setPermissions(permissionses); | |
| 529 | + String name = ""; | |
| 530 | + if (null != roles1.getOrgId()) { | |
| 531 | + Organization o = organizationService.getOrganization(roles1.getOrgId()); | |
| 532 | + if(null!=o){ | |
| 533 | + name = o.getName(); | |
| 534 | + } | |
| 535 | + } | |
| 536 | + roles1.setOrgName(name); | |
| 537 | + } | |
| 538 | + } | |
| 539 | + | |
| 540 | + | |
| 541 | + FrontEndResult frontEndResult = new FrontEndResult(); | |
| 542 | + frontEndResult.setPageInfo(rolesQuery.getPageInfo()); | |
| 543 | + frontEndResult.setData(rolesList); | |
| 544 | + frontEndResult.setErrorcode(ErrorCodeConstants.SUCCESS); | |
| 545 | + return frontEndResult; | |
| 546 | + } | |
| 547 | + | |
| 467 | 548 | /** |
| 468 | 549 | * 获取管理员角色列表 |
| 469 | 550 | */ |