framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
@@ -4,7 +4,6 @@
import cn.hutool.core.convert.Convert;
import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.digest.MD5;
import cn.lili.base.Result;
import cn.lili.cache.Cache;
import cn.lili.cache.CachePrefix;
@@ -57,7 +56,6 @@
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.catalina.security.SecurityUtil;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationEventPublisher;
@@ -70,6 +68,7 @@
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
/**
 * 会员接口业务层实现
@@ -549,7 +548,7 @@
    public Result resetPassword(String id) {
        String password = "111111";
        Member member = this.getById(id);
        member.setPassword(new BCryptPasswordEncoder().encode(password));
        member.setPassword(new BCryptPasswordEncoder().encode(SecureUtil.md5(password)));
        this.updateById(member);
        return Result.ok("重置成功");
    }
@@ -578,8 +577,36 @@
        queryWrapper.eq(CharSequenceUtil.isNotBlank(memberSearchVO.getDisabled()), "disabled",
                memberSearchVO.getDisabled().equals(SwitchEnum.OPEN.name()) ? 1 : 0);
        queryWrapper.orderByDesc("create_time");
        return this.baseMapper.pageByMemberVO(PageUtil.initPage(page), queryWrapper);
    }
    @Override
    public IPage<MemberVO> getMemberPageAndTag(MemberSearchVO memberSearchVO, PageVO page) {
        QueryWrapper<Member> queryWrapper = Wrappers.query();
        //用户名查询
        queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getUsername()), "username", memberSearchVO.getUsername());
        //用户名查询
        queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getNickName()), "nick_name", memberSearchVO.getNickName());
        //按照电话号码查询
        queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getMobile()), "mobile", memberSearchVO.getMobile());
        //按照会员状态查询
        queryWrapper.eq(CharSequenceUtil.isNotBlank(memberSearchVO.getDisabled()), "disabled",
                memberSearchVO.getDisabled().equals(SwitchEnum.OPEN.name()) ? 1 : 0);
        queryWrapper.orderByDesc("create_time");
        if (CollectionUtils.isNotEmpty(memberSearchVO.getTagIds())) {
            // 使用inSql方法进行安全的子查询
            String tagIdsStr = memberSearchVO.getTagIds().stream()
                    .map(String::valueOf)
                    .collect(Collectors.joining(","));
            queryWrapper.inSql("id",
                    "SELECT DISTINCT member_id FROM lmk_member_tag WHERE tag_id IN (" +
                            tagIdsStr + ")");
            return this.baseMapper.pageByMemberVO(PageUtil.initPage(page), queryWrapper);
        }
        return this.baseMapper.pageByMemberVO(PageUtil.initPage(page),queryWrapper);
    }
    @Override
    @PointLogPoint
@@ -829,7 +856,9 @@
    public MemberVO getMember(String id) {
        MemberVO member = baseMapper.getVoById(id);
        if (Objects.nonNull(member)) {
            member.setFace(cosUtil.getPreviewUrl(member.getFace()));
            if(StringUtils.isNotBlank(member.getFace()) && !member.getFace().contains("https")){
                member.setFace(cosUtil.getPreviewUrl(member.getFace()));
            }
        }
        return member;
    }