longz
2026-07-20 faaf70b3fc0cff90d25fa30b37f225f679a0d5a5
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -428,6 +428,31 @@
            return R.ok(page);
        }
        List<Long> pageUserIds = page.getRecords().stream().map(TAppUser::getId).collect(Collectors.toList());
        List<String> pageUserPhones = page.getRecords().stream()
                .map(TAppUser::getPhone)
                .filter(StringUtils::isNotBlank)
                .map(String::trim)
                .distinct()
                .collect(Collectors.toList());
        LambdaQueryChainWrapper<TAppUserWhitelist> pageWhitelistQuery = appUserWhitelistService.lambdaQuery()
                .eq(TAppUserWhitelist::getStatus, 1)
                .eq(TAppUserWhitelist::getDelFlag, false)
                .and(wrapper -> {
                    wrapper.in(TAppUserWhitelist::getAppUserId, pageUserIds);
                    if (!pageUserPhones.isEmpty()) {
                        wrapper.or().in(TAppUserWhitelist::getPhone, pageUserPhones);
                    }
                });
        List<TAppUserWhitelist> pageWhitelistList = pageWhitelistQuery.list();
        Set<Long> activeWhitelistUserIds = pageWhitelistList.stream()
                .map(TAppUserWhitelist::getAppUserId)
                .filter(Objects::nonNull)
                .collect(Collectors.toSet());
        Set<String> activeWhitelistPhones = pageWhitelistList.stream()
                .map(TAppUserWhitelist::getPhone)
                .filter(StringUtils::isNotBlank)
                .map(String::trim)
                .collect(Collectors.toSet());
        Map<Long, String> userTagNameMap = getUserTagNameMap(pageUserIds);
        Map<Long, BigDecimal> exchangeCodeBalanceMap = otherClient.getExchangeCodeBalanceMap(pageUserIds).getData();
        if (exchangeCodeBalanceMap == null) {
@@ -441,6 +466,9 @@
        for (TAppUser appUser : page.getRecords()) {
            appUser.setExchangeCodeBalance(exchangeCodeBalanceMap.getOrDefault(appUser.getId(), BigDecimal.ZERO));
            appUser.setTagName(userTagNameMap.get(appUser.getId()));
            boolean activeWhitelist = activeWhitelistUserIds.contains(appUser.getId())
                    || (StringUtils.isNotBlank(appUser.getPhone()) && activeWhitelistPhones.contains(appUser.getPhone().trim()));
            appUser.setWhitelistFlag(activeWhitelist ? 1 : 2);
            if (appUser.getVipEndTime()!=null&&appUser.getVipEndTime().isAfter(LocalDateTime.now())) {
                //匹配vipMap的值
                appUser.setVipName(vipMap.getData().get(appUser.getVipId()));
@@ -731,11 +759,7 @@
        List<TAppUserCar> carList = appUserCarService.lambdaQuery().eq(TAppUserCar::getAppUserId, id).orderByDesc(BasePojo::getCreateTime).list();
        userDetailDto.setCarList(carList);
        List<Integer> tagIds = appUserTagService.lambdaQuery().eq(TAppUserTag::getAppUserId, id).orderByDesc(TAppUserTag::getCreateTime).list().stream().map(TAppUserTag::getUserTagId).collect(Collectors.toList());
        R<Map<Integer, String>> tagMap = otherClient.getTagMap(tagIds);
        userDetailDto.setTagName(tagMap.getData().values()
                .stream()
                .collect(Collectors.joining(",")));
        userDetailDto.setTagName(getUserTagNameMap(Collections.singletonList(id)).get(id));