package cn.iocoder.yudao.module.ums.dal.mysql.member;
|
|
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.ums.controller.admin.member.vo.profile.UmsMemberProfileChangePageReqVO;
|
import cn.iocoder.yudao.module.ums.dal.dataobject.member.UmsMemberProfileChangeDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.util.List;
|
|
@Mapper
|
public interface UmsMemberProfileChangeMapper extends BaseMapperX<UmsMemberProfileChangeDO> {
|
|
default UmsMemberProfileChangeDO selectPendingByMemberId(Long memberId) {
|
return selectOne(new LambdaQueryWrapperX<UmsMemberProfileChangeDO>()
|
.eq(UmsMemberProfileChangeDO::getMemberId, memberId)
|
.eq(UmsMemberProfileChangeDO::getStatus, 0)
|
.last("LIMIT 1"));
|
}
|
|
default UmsMemberProfileChangeDO selectLatestByMemberId(Long memberId) {
|
List<UmsMemberProfileChangeDO> list = selectList(new LambdaQueryWrapperX<UmsMemberProfileChangeDO>()
|
.eq(UmsMemberProfileChangeDO::getMemberId, memberId)
|
.orderByDesc(UmsMemberProfileChangeDO::getId)
|
.last("LIMIT 1"));
|
return list.isEmpty() ? null : list.get(0);
|
}
|
|
/**
|
* 分页查询资料变更申请
|
*
|
* <p>方法名不用 selectPage 重载,避免与 BaseMapperX.selectPage(PageParam, Wrapper) 在传 null 时二义。
|
*
|
* @param reqVO 查询条件
|
* @param submitterUserId 提交人用户编号;非空时只查该用户提交的记录(会员自助场景),
|
* 为空表示不限制提交人(管理员审核场景)
|
*/
|
default PageResult<UmsMemberProfileChangeDO> selectPageBySubmitter(UmsMemberProfileChangePageReqVO reqVO,
|
Long submitterUserId) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<UmsMemberProfileChangeDO>()
|
.likeIfPresent(UmsMemberProfileChangeDO::getMemberNo, reqVO.getMemberNo())
|
.likeIfPresent(UmsMemberProfileChangeDO::getMemberName, reqVO.getMemberName())
|
.eqIfPresent(UmsMemberProfileChangeDO::getStatus, reqVO.getStatus())
|
.eqIfPresent(UmsMemberProfileChangeDO::getUserId, submitterUserId)
|
.orderByDesc(UmsMemberProfileChangeDO::getId));
|
}
|
|
}
|