mitao
2025-03-14 392b42c4891cf2e6beda57ab32c51598f290f4b7
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberPointsServiceImpl.java
@@ -14,6 +14,7 @@
import com.ruoyi.system.api.domain.Member;
import com.ruoyi.system.api.domain.MemberPoints;
import com.ruoyi.system.api.domain.dto.MemberDTO;
import com.ruoyi.system.api.domain.dto.MemberPointsDTO;
import com.ruoyi.system.api.feignClient.MemberClient;
import java.util.List;
import java.util.Map;
@@ -22,6 +23,8 @@
import java.util.stream.Collectors;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
/**
 * <p>
@@ -42,6 +45,7 @@
        Page<MemberPoints> page = new Page<>(memberDTO.getPageCurr(), memberDTO.getPageSize());
        LambdaQueryWrapper<MemberPoints> wrapper= Wrappers.lambdaQuery();
        wrapper.eq(MemberPoints::getMemberId,memberDTO.getMemberid());
        wrapper.orderByDesc(MemberPoints::getCreateTime);
        Page<MemberPoints> page1 = this.page(page, wrapper);
        return PageDTO.of(page1);
    }
@@ -55,16 +59,22 @@
    @Override
    public PageDTO<MgtMemberPointsVO> getMemberPointsPage(MgtMemberPointsQuery query) {
        Set<Long> memberIdSet = null;
        Page<MemberPoints> page = new Page<>(query.getPageCurr(), query.getPageSize());
        MemberDTO memberDTO = getMemberQueryParam(query);
        if (StringUtils.isNotNull(memberDTO)) {
            memberIdSet = getMemberIdSet(memberDTO);
            if (StringUtils.isEmpty(memberIdSet)) {
                return PageDTO.empty(page);
            }
        }
        // 分页查询积分
        Page<MemberPoints> page = this.lambdaQuery()
        page = this.lambdaQuery()
                .eq(StringUtils.isNotNull(query.getPointsStatus()), MemberPoints::getPointsStatus,
                        query.getPointsStatus())
                .in(StringUtils.isNotEmpty(memberIdSet), MemberPoints::getMemberId, memberIdSet)
                .page(new Page<>(query.getPageCurr(), query.getPageSize()));
                .eq(StringUtils.isNotNull(query.getId()), MemberPoints::getMemberId, query.getId())
                .orderByDesc(MemberPoints::getCreateTime)
                .page(page);
        if (StringUtils.isEmpty(page.getRecords())) {
            return PageDTO.empty(page);
        }
@@ -110,4 +120,15 @@
        }
        return memberDTO;
    }
    @Override
    @Transactional(propagation = Propagation.REQUIRES_NEW)
    public void addMemberPoints(MemberPointsDTO memberPointsDTO) {
        MemberPoints points = new MemberPoints();
        points.setMemberId(memberPointsDTO.getMemberId());
        points.setPointsType(memberPointsDTO.getPointsType());
        points.setPoints(memberPointsDTO.getPoints());
        points.setPointsStatus(memberPointsDTO.getPointsStatus());
        this.save(points);
    }
}