package cn.iocoder.yudao.module.member.dal.mysql.point; import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordPageReqVO; import cn.iocoder.yudao.module.member.controller.app.point.vo.AppMemberPointRecordPageReqVO; import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; import org.apache.ibatis.annotations.Mapper; import java.util.Set; /** * 用户积分记录 Mapper * * @author QingX */ @Mapper public interface MemberPointRecordMapper extends BaseMapperX { default PageResult selectPage(MemberPointRecordPageReqVO reqVO, Set userIds) { return selectPage(reqVO, new LambdaQueryWrapperX() .inIfPresent(MemberPointRecordDO::getUserId, userIds) .eqIfPresent(MemberPointRecordDO::getUserId, reqVO.getUserId()) .eqIfPresent(MemberPointRecordDO::getBizType, reqVO.getBizType()) .likeIfPresent(MemberPointRecordDO::getTitle, reqVO.getTitle()) .orderByDesc(MemberPointRecordDO::getId)); } default PageResult selectPage(Long userId, AppMemberPointRecordPageReqVO pageReqVO) { return selectPage(pageReqVO, new LambdaQueryWrapperX() .eq(MemberPointRecordDO::getUserId, userId) .betweenIfPresent(MemberPointRecordDO::getCreateTime, pageReqVO.getCreateTime()) .gt(Boolean.TRUE.equals(pageReqVO.getAddStatus()), MemberPointRecordDO::getPoint, 0) .lt(Boolean.FALSE.equals(pageReqVO.getAddStatus()), MemberPointRecordDO::getPoint, 0) .orderByDesc(MemberPointRecordDO::getId)); } }