Pu Zhibing
2025-02-28 398213305237fe9e8a4ee84a2c052ec5f393c4f9
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java
@@ -96,15 +96,75 @@
      LoginReturnVO loginReturnVO = reult.getData();
      TokenVo tokenVo = new TokenVo();
      BeanUtils.copyProperties(loginReturnVO, tokenVo);
      List<SystemRoleMenu> list = systemRoleMenuService.list(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, systemUser.getSystemRoleId()));
      List<Integer> collect = list.stream().map(SystemRoleMenu::getSystemMenuId).collect(Collectors.toList());
      Set<String> collect1 = new HashSet<>();
      if(collect.size() > 0){
         List<SystemMenu> systemMenus = systemMenuService.listByIds(collect);
         LambdaQueryWrapper<SystemMenu> queryWrapper = new LambdaQueryWrapper<SystemMenu>().in(SystemMenu::getId, collect);
         switch (systemUser.getAccountLevel()){
            case 2:
               queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
                     "/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
                     "/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
                     "/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
                     "/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
                     "/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
               break;
            case 3:
               queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
                     "/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
                     "/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
                     "/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
                     "/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
                     "/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
               break;
            case 4:
               queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
                     "/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
                     "/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
                     "/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
                     "/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
                     "/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
               break;
            case 5:
               queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
                     "/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
                     "/system_setting/people_management", "/system_setting/people_management/add", "/system_setting/people_management/edit", "/system_setting/people_management/del",
                     "/system_setting/people_management/freeze", "/system_setting/unit_management", "/system_setting/people_management/detail", "/system_setting/unit_management/add",
                     "/system_setting/unit_management/edit", "/system_setting/unit_management/del", "/work_order_transaction_management/work_order_item_configuration",
                     "/work_order_transaction_management/work_order_item_configuration/save", "/work_order_transaction_management/problem_type_management",
                     "/work_order_transaction_management/problem_type_management/add", "/work_order_transaction_management/problem_type_management/edit",
                     "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
                     "/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
               break;
         }
         List<SystemMenu> systemMenus = systemMenuService.list(queryWrapper);
         collect1 = systemMenus.stream().map(SystemMenu::getUrl).collect(Collectors.toSet());
      }
      tokenVo.setMenu(collect1);
      tokenVo.setName(systemUser.getName());
      tokenVo.setAccountLevel(systemUser.getAccountLevel());
      switch (systemUser.getAccountLevel()){
         case 1:
            tokenVo.setCityCode("510400");
            break;
         case 2:
            tokenVo.setCityCode("510400");
            tokenVo.setDistrictsCode(systemUser.getDistrictsCode());
            break;
         case 3:
            tokenVo.setCityCode("510400");
            tokenVo.setDistrictsCode(systemUser.getDistrictsCode());
            tokenVo.setStreetId(systemUser.getStreetId());
            break;
         case 4:
            tokenVo.setCityCode("510400");
            tokenVo.setDistrictsCode(systemUser.getDistrictsCode());
            tokenVo.setStreetId(systemUser.getStreetId());
            tokenVo.setCommunityId(systemUser.getCommunityId().toString());
            break;
      }
      return R.ok(tokenVo);
   }
   
@@ -127,7 +187,7 @@
   public R<IPage<SystemUserListVo>> list(SystemUserList query){
      Integer id = this.getLoginUserInfoSanGeShenBian().getId();
      SystemUser user = systemUserService.getById(id);
      IPage<SystemUserListVo> list = systemUserService.list(user.getAccountLevel(), query);
      IPage<SystemUserListVo> list = systemUserService.list(user, query);
      return R.ok(list);
   }