From 398213305237fe9e8a4ee84a2c052ec5f393c4f9 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 28 二月 2025 17:56:45 +0800 Subject: [PATCH] 修改管理后台接口bug --- springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java | 100 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 93 insertions(+), 7 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java index 1d7edde..63d59e7 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java @@ -19,6 +19,8 @@ import com.panzhihua.sangeshenbian.warpper.SystemUserListVo; import com.panzhihua.sangeshenbian.warpper.TokenVo; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; import org.springframework.data.redis.core.RedisTemplate; @@ -27,9 +29,7 @@ import javax.annotation.Resource; import java.time.LocalDateTime; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; @@ -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); } @@ -197,7 +257,7 @@ @PutMapping("/freeze/{id}") @ApiOperation(value = "冻结账号", tags = {"三个身边后台-人员管理"}) - @OperLog(operModul = "三个身边后台",operType = 0,businessType = "冻结账号") + @OperLog(operModul = "三个身边后台",operType = 2,businessType = "冻结账号") public R freeze(@PathVariable("id") Integer id){ SystemUser systemUser = systemUserService.getById(id); if(2 == systemUser.getStatus()){ @@ -211,7 +271,7 @@ @PutMapping("/unfreeze/{id}") @ApiOperation(value = "解冻账号", tags = {"三个身边后台-人员管理"}) - @OperLog(operModul = "三个身边后台",operType = 0,businessType = "解冻账号") + @OperLog(operModul = "三个身边后台",operType = 2,businessType = "解冻账号") public R unfreeze(@PathVariable("id") Integer id){ SystemUser systemUser = systemUserService.getById(id); if(1 == systemUser.getStatus()){ @@ -243,4 +303,30 @@ BeanUtils.copyProperties(systemUser, systemUserVo); return R.ok(systemUserVo); } + + + + @GetMapping("/getAdministrativeDivision/{id}/{tier}") + @ApiOperation(value = "获取行政区划层级联动数据", tags = {"三个身边后台-人员管理"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "上级id", required = false, dataType = "string"), + @ApiImplicitParam(name = "tier", value = "数据层级(2=区县,3=街道,4=社区)", required = true, dataType = "int"), + }) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取行政区划层级联动数据") + public R<List<Map<String, Object>>> getAdministrativeDivision(@PathVariable("id") String id, @PathVariable("tier") Integer tier){ + List<Map<String, Object>> list = new ArrayList<>(); + //区县 + if(2 == tier){ + list = systemUserService.getRegion("510400"); + } + //街道 + if(3 == tier){ + list = systemUserService.getStreet(id); + } + //社区 + if(4 == tier){ + list = systemUserService.getCommunity(id); + } + return R.ok(list); + } } -- Gitblit v1.7.1