yyy
2026-04-17 8dfdb343364a6d8f87f8095a3fd899f6541c8be3
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/SysGroupServiceImpl.java
@@ -1,6 +1,7 @@
package com.xiaopeng.account.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.DesensitizedUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -20,12 +21,13 @@
import com.xiaopeng.api.feignClient.operation.SysMenuClient;
import com.xiaopeng.api.model.account.SysGroup;
import com.xiaopeng.api.model.account.SysRole;
import com.xiaopeng.api.model.account.SysUser;
import com.xiaopeng.api.model.operation.SysMenu;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.StringUtils;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.common.security.utils.SecurityUtils;
import com.xiaopeng.common.security.service.TokenService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.shardingsphere.transaction.annotation.ShardingSphereTransactionType;
@@ -36,6 +38,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
@@ -54,8 +57,11 @@
    private final ISysGroupMenuService groupMenuService;
    @Resource
    private final SysMenuClient sysMenuClient;
    private final ISysRoleService sysRoleService;
    @Resource
    private TokenService tokenService;
    /**
     * 新增权限组
@@ -314,4 +320,35 @@
        }
        removeById(id);
    }
    @Override
    public String getPhoneDesensitization(String phoneNumber){
        boolean b = getPhoneDesensitization();
        if(b){
            return DesensitizedUtil.mobilePhone(phoneNumber);
        }
        return phoneNumber;
    }
    /**
     * 获取登录用户的权限组,获取权限组的手机号是否脱敏的字段
     * true 需要脱敏,false 否
     * @return
     */
    @Override
    public boolean getPhoneDesensitization(){
        try {
            SysUser sysUser = tokenService.getLoginUser().getSysUser();
            //用户查询角色 角色查询 权限组
            int count = baseMapper.getPhoneDesensitization(sysUser.getId());
            return count > 0;
        } catch (Exception e) {
            return false;
        }
    }
}