package cn.iocoder.yudao.module.system.dal.mysql.mail;
|
|
import cn.hutool.core.util.StrUtil;
|
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.framework.mybatis.core.util.MyBatisUtils;
|
import cn.iocoder.yudao.module.system.controller.admin.mail.vo.log.MailLogPageReqVO;
|
import cn.iocoder.yudao.module.system.dal.dataobject.mail.MailLogDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
@Mapper
|
public interface MailLogMapper extends BaseMapperX<MailLogDO> {
|
|
default PageResult<MailLogDO> selectPage(MailLogPageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<MailLogDO>()
|
.eqIfPresent(MailLogDO::getUserId, reqVO.getUserId())
|
.eqIfPresent(MailLogDO::getUserType, reqVO.getUserType())
|
.eqIfPresent(MailLogDO::getAccountId, reqVO.getAccountId())
|
.eqIfPresent(MailLogDO::getTemplateId, reqVO.getTemplateId())
|
.eqIfPresent(MailLogDO::getSendStatus, reqVO.getSendStatus())
|
.betweenIfPresent(MailLogDO::getSendTime, reqVO.getSendTime())
|
.apply(StrUtil.isNotBlank(reqVO.getToMail()),
|
MyBatisUtils.findInSet("to_mails"), reqVO.getToMail())
|
.orderByDesc(MailLogDO::getId));
|
}
|
|
}
|