luodangjia
2025-02-06 8fd10b1d55e57e7ecaa36082d3ef85aed016e2e5
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
@@ -1,7 +1,6 @@
package com.ruoyi.account.controller;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -15,11 +14,13 @@
import com.ruoyi.account.util.weChat.EnvVersion;
import com.ruoyi.account.util.weChat.WeChatUtil;
import com.ruoyi.account.vo.*;
import com.ruoyi.common.core.constant.CacheConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.order.feignClient.OrderClient;
import com.ruoyi.order.feignClient.RemoteOrderGoodsClient;
@@ -33,6 +34,7 @@
import com.ruoyi.other.api.feignClient.VipSettingClient;
import com.ruoyi.system.api.domain.SysUser;
import com.ruoyi.system.api.feignClient.SysUserClient;
import com.ruoyi.system.api.model.LoginUser;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.util.CollectionUtils;
@@ -98,7 +100,9 @@
    private BalanceChangeRecordService balanceChangeRecordService;
    @Resource
    private UserChangeLogService userChangeLogService;
    @Resource
    private RedisService redisService;
    @Resource
    private WeChatUtil weChatUtil;
    
@@ -670,7 +674,21 @@
        AppUser byId = appUserService.getById(id);
        byId.setStatus(status);
        appUserService.updateById(byId);
        loginout(id);
        return R.ok();
    }
    private void loginout(Long userId) {
        Collection<String> keys = redisService.keys(CacheConstants.LOGIN_TOKEN_KEY + "*");
        if (!CollectionUtils.isEmpty(keys)) {
            for (String key : keys) {
                LoginUser user = redisService.getCacheObject(key);
                if (user.getUserid().equals(userId)) {
                    redisService.deleteObject(key);
                    break;
                }
            }
        }
    }
    @GetMapping("/select")
@@ -726,7 +744,7 @@
    @GetMapping("/detail")
    @ApiOperation(value = "用户列表-详情", tags = {"管理后台"})
    public R<AppUser> detail(Long id, Integer shopId) {
    public R<AppUser> detail(Long id, Integer shopId, Integer pageNum, Integer pageSize) {
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser = sysUserClient.getSysUser(userid).getData();
        AppUser byId = appUserService.getById(id);
@@ -756,8 +774,8 @@
        if (lastOrder.getData() != null) {
            byId.setLastOrderTime(lastOrder.getData().getCreateTime());
        }
        List<AppUser> list = appUserService.lambdaQuery().eq(AppUser::getInviteUserId, id).list();
        byId.setBottomUsers(list);
        Page<AppUser> page = appUserService.page(Page.of(pageNum, pageSize), new LambdaQueryWrapper<AppUser>().eq(AppUser::getInviteUserId, id));
        byId.setBottomUsersPage(page);
        //消费总金额
        if(null == shopId || 1 == sysUser.getRoleType()){
            shopId = -1;