puzhibing
2026-05-11 b7bb5daa5f4ffe1764a363a051a5d6f868168cf9
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/controller/XpInvitationCodeController.java
@@ -7,17 +7,20 @@
import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.entity.TemplateExportParams;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.DesensitizedUtil;
import cn.hutool.core.util.PhoneUtil;
import cn.hutool.core.io.resource.ClassPathResource;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.xiaopeng.api.feignClient.account.SysGroupMenuClient;
import com.xiaopeng.api.model.operation.XpInvitationCode;
import com.xiaopeng.api.model.operation.XpWhitelist;
import com.xiaopeng.api.vo.account.LoginUser;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.DateUtils;
import com.xiaopeng.common.core.utils.WebUtils;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.common.security.service.TokenService;
import com.xiaopeng.operation.constant.I18nKeyConstant;
import com.xiaopeng.operation.dto.InvitationAddDto;
import com.xiaopeng.operation.exportExcle.XpInvitationCodeExportExcel;
@@ -71,6 +74,8 @@
    private MessageSource messageSource;
    @Resource
    private SysGroupMenuClient groupMenuClient;
    @Resource
    private TokenService tokenService;
    private static final Pattern CHINESE_PATTERN = Pattern.compile("\\p{IsHan}");
    private static final long INVITATION_CODE_LIMIT = 500L;
@@ -78,8 +83,11 @@
    @ApiOperation(value = "邀请码管理分页列表", response = XpInvitationCode.class)
    @PostMapping("/api/v1/invitation/pageList")
    public R<PageInfo<XpInvitationCode>> pageList(@RequestBody InvitationPageListQuery query) {
        LoginUser loginUser = tokenService.getLoginUser();
        PageInfo<XpInvitationCode> pageList = xpInvitationCodeService.pageList(query);
        pageList.getRecords().forEach(s -> s.setBindAccount(groupMenuClient.getPhoneDesensitization(s.getBindAccount()).getData()));
        if(!loginUser.getPhoneDesensitizationExempt()){
            pageList.getRecords().forEach(s -> s.setBindAccount(DesensitizedUtil.mobilePhone(s.getBindAccount())));
        }
        return R.ok(pageList);
    }