From ee6a2aa9e265f498ce7df9c603d3148487c0b1e8 Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期三, 21 五月 2025 12:00:20 +0800 Subject: [PATCH] 修改bug --- springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/controller/HomeController.java | 35 +++++++++++++++++++++++++++++++---- 1 files changed, 31 insertions(+), 4 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/controller/HomeController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/controller/HomeController.java index 72dbb0a..c4f3135 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/controller/HomeController.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/controller/HomeController.java @@ -5,12 +5,15 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.redis.RedisUtils; +import com.panzhihua.sangeshenbian.model.dto.UserIdentityDTO; import com.panzhihua.sangeshenbian.model.entity.Banner; import com.panzhihua.sangeshenbian.model.entity.PartyMember; import com.panzhihua.sangeshenbian.model.entity.SystemUser; +import com.panzhihua.sangeshenbian.model.entity.SystemUserLevel; import com.panzhihua.sangeshenbian.model.query.BasePage; import com.panzhihua.sangeshenbian.model.vo.ComplaintTodoVO; import com.panzhihua.sangeshenbian.model.vo.MessageNotificationVO; @@ -20,6 +23,8 @@ import com.panzhihua.sangeshenbian.warpper.IdentityInformation; import com.panzhihua.sangeshenbian.warpper.IdentityInformationVO; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; @@ -44,7 +49,7 @@ private final IPartyMemberService partyMemberService; private final RedisUtils redisUtils; private final IdentityInformationService identityInformationService; - + private final ISystemUserLevelService systemUserLevelService; @ApiOperation("获取banner列表") @GetMapping("/banner-list") public R<List<Banner>> getBannerList() { @@ -87,7 +92,17 @@ @GetMapping("/current-user-info") @ApiOperation("获取三个身边当前用户信息 用于判断用户是否是上级") public R<SystemUser> getCurrentUserInfo() { - return R.ok(systemUserService.getSystemUserAdminByPhone(getLoginUserInfo().getPhone()).orElse(null)); + SystemUser systemUser = systemUserService.getSystemUserAdminByPhone(getLoginUserInfo().getPhone()).orElse(null); + Object o1 = redisUtils.get("identity:" + getLoginUserInfo().getPhone()); + if(o1!=null){ + UserIdentityDTO o2 = (UserIdentityDTO) o1; + Integer levelId = o2.getLevelId(); + if(levelId!=null) { + SystemUserLevel systemUserLevel = systemUserLevelService.getById(levelId); + systemUser.setLevelId(systemUserLevel.getLevel()); + } + } + return R.ok(systemUser); } /** @@ -141,9 +156,21 @@ */ @GetMapping("/change-identity") @ApiOperation("切换身份") - public R<?> changeIdentity(Integer identity) { + @ApiImplicitParams({ + @ApiImplicitParam(name = "identity", value = "身份 1:党员 2:管理员", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "levelId", value = "身份层级id,党员身份不传,管理员必传", required = true, dataType = "Integer") + }) + public R<?> changeIdentity(@RequestParam(value = "identity", required = true) Integer identity, + @RequestParam(value = "levelId", required = false) Integer levelId) { LoginUserInfoVO loginUserInfo = getLoginUserInfo(); - redisUtils.set("identity:" + loginUserInfo.getPhone(), identity); + if (identity.equals(2) && Objects.isNull(levelId)) { + throw new ServiceException("管理员所属层级id不能为空"); + } + // 存储到Redis + redisUtils.set("identity:" + loginUserInfo.getPhone(), UserIdentityDTO.builder() + .identity(identity) + .levelId(levelId) + .build()); return R.ok(); } -- Gitblit v1.7.1