Commit 9e7148bb290257f50b9e533c167d311f78e69d05

Authored by rui.zhang
1 parent 3a155b87ef

platform permission

add return pageinfo

Showing 1 changed file with 61 additions and 33 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java View file @ 9e7148b
... ... @@ -18,6 +18,7 @@
18 18 import org.springframework.stereotype.Controller;
19 19 import org.springframework.web.bind.annotation.*;
20 20  
  21 +import javax.management.relation.Role;
21 22 import javax.servlet.http.HttpServletRequest;
22 23 import javax.servlet.http.HttpServletResponse;
23 24 import java.util.*;
... ... @@ -222,7 +223,7 @@
222 223 return;
223 224 }
224 225  
225   - if(list.get(0).getEnable().equals(2)) {
  226 + if(!list.get(0).getEnable().equals(1)) {
226 227 ResultUtils.buildParameterErrorResultAndWrite(httpServletResponse, "该账户已被禁用");
227 228 return;
228 229 }
229 230  
... ... @@ -673,20 +674,13 @@
673 674 @RequestParam(value = "roleIds",required = false) String roleIds,
674 675 @RequestParam(value = "orgId",required = false) Integer orgId,
675 676 @RequestParam(value = "deptId",required = false) Integer deptId) {
676   -
677   -
678   -
679   -
680 677 //获取登录用户
681 678 LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
682 679 Users user = usersService.getUsers(loginState.getId());
683 680 if (user != null) {
684 681  
685   - //检查账户是否存在
686   - UsersQuery usersQuery = new UsersQuery();
687   - usersQuery.setPhone(phone);
688   - List<Users> usersList = usersService.queryUsers(usersQuery);
689   - if (usersList.size() == 0) {
  682 + Users users = usersService.getUsers(id);
  683 + if(null == users) {
690 684 Map<String, Object> map = new HashMap<>();
691 685 map.put(ResultUtils.ERROR_CODE, ConstantInterface.PARAMETER_ERROR);
692 686 map.put(ResultUtils.ERROR_MSG, "用户不存在");
693 687  
... ... @@ -694,11 +688,34 @@
694 688 return;
695 689 }
696 690  
697   - Users users = usersList.get(0);
698   - users.setId(id);
  691 +
  692 + //修改了手机号,不能修改已存在的手机号
  693 + if(!phone.equals(users.getPhone())) {
  694 + //检查账户是否存在
  695 + UsersQuery usersQuery = new UsersQuery();
  696 + usersQuery.setPhone(phone);
  697 + usersQuery.setYn(YnEnums.YES.getId());
  698 + List<Users> usersList = usersService.queryUsers(usersQuery);
  699 + if (0 < usersList.size()) {
  700 + Map<String, Object> map = new HashMap<>();
  701 + map.put(ResultUtils.ERROR_CODE, ConstantInterface.PARAMETER_ERROR);
  702 + map.put(ResultUtils.ERROR_MSG, "手机号已存在");
  703 + writeJson(response, JsonUtil.obj2JsonString(map));
  704 + return;
  705 + }
  706 +
  707 +
  708 + LoginContext loginContext = LoginUtil.register(phone, token, typeId);
  709 + if(!loginContext.getErrorcode().equals(0)) {
  710 + ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.SYSTEM_ERROR, loginContext.getErrormsg());
  711 + return;
  712 + }
  713 + users.setPhone(phone);
  714 + users.setLogincenterId(loginContext.getId());
  715 + }
  716 +
699 717 users.setName(name);
700 718 users.setAccount(account);
701   - users.setPhone(phone);
702 719 users.setEnable(enable);
703 720 users.setRemarks(remarks);
704 721 users.setModified(new Date());
705 722  
706 723  
... ... @@ -710,30 +727,41 @@
710 727  
711 728 //如有角色,则对用户角色中间表先删除后新增
712 729 if(null != roleIds) {
713   -
714   - Integer _userId = usersList.get(0).getId();
715   - UserRoleMapsQuery userRoleMapsQuery = new UserRoleMapsQuery();
716   - userRoleMapsQuery.setUserId(_userId);
717   - List<UserRoleMaps> roleMapsList = userRoleMapsService.queryUserRoleMaps(userRoleMapsQuery);
718   - for (UserRoleMaps userRoleMaps : roleMapsList) {
719   - userRoleMaps.setYn(YnEnums.NO.getId());
720   - userRoleMapsService.updateUserRoleMaps(userRoleMaps);
  730 + String[] roleArrayIds = roleIds.split(",");
  731 + //判断角色是否有更新
  732 + Boolean flag = false;
  733 + for (String s : roleArrayIds) {
  734 + for(Roles role : users.getRoles()) {
  735 + if(s.equals(role.getId().toString())) continue;
  736 + flag = true;
  737 + }
  738 + if(flag) break;
721 739 }
722 740  
723   -
724   - UserRoleMaps userRoleMaps = new UserRoleMaps();
725   - String[] roleArrayIds = roleIds.split(",");
726   - for (String tmp : roleArrayIds) {
727   - Roles roles = rolesService.getRoles(Integer.valueOf(tmp));
728   - if (roles == null || roles.getYn() == YnEnums.NO.getId()) {
729   - continue;
  741 + if(flag) {
  742 + Integer _userId = users.getId();
  743 + UserRoleMapsQuery userRoleMapsQuery = new UserRoleMapsQuery();
  744 + userRoleMapsQuery.setUserId(_userId);
  745 + List<UserRoleMaps> roleMapsList = userRoleMapsService.queryUserRoleMaps(userRoleMapsQuery);
  746 + for (UserRoleMaps userRoleMaps : roleMapsList) {
  747 + userRoleMaps.setYn(YnEnums.NO.getId());
  748 + userRoleMapsService.updateUserRoleMaps(userRoleMaps);
730 749 }
731 750  
732   - if (user.getId() != null) {
733   - userRoleMaps.setRoleId(Integer.valueOf(Integer.valueOf(tmp)));
734   - userRoleMaps.setUserId(_userId);
735   - userRoleMaps.setYn(YnEnums.YES.getId());
736   - userRoleMapsService.addUserRoleMaps(userRoleMaps);
  751 +
  752 + UserRoleMaps userRoleMaps = new UserRoleMaps();
  753 + for (String tmp : roleArrayIds) {
  754 + Roles roles = rolesService.getRoles(Integer.valueOf(tmp));
  755 + if (roles == null || roles.getYn() == YnEnums.NO.getId()) {
  756 + continue;
  757 + }
  758 +
  759 + if (user.getId() != null) {
  760 + userRoleMaps.setRoleId(Integer.valueOf(Integer.valueOf(tmp)));
  761 + userRoleMaps.setUserId(_userId);
  762 + userRoleMaps.setYn(YnEnums.YES.getId());
  763 + userRoleMapsService.addUserRoleMaps(userRoleMaps);
  764 + }
737 765 }
738 766 }
739 767 }