package cn.iocoder.yudao.module.wxcp.dal.mysql.activity; import cn.hutool.core.collection.CollUtil; 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.wxcp.controller.admin.activity.vo.WxCpSignupPageReqVO; import cn.iocoder.yudao.module.wxcp.dal.dataobject.activity.WxCpActivitySignupDO; import org.apache.ibatis.annotations.Mapper; import java.util.List; /** * 企业微信活动报名 Mapper * * @author 超级管理员 */ @Mapper public interface WxCpActivitySignupMapper extends BaseMapperX { default WxCpActivitySignupDO selectByActivityIdAndWxUserId(Long activityId, String wxUserId) { return CollUtil.getFirst(selectList(new LambdaQueryWrapperX() .eq(WxCpActivitySignupDO::getActivityId, activityId) .eq(WxCpActivitySignupDO::getWxUserId, wxUserId) .orderByAsc(WxCpActivitySignupDO::getId))); } /** * 按手机号查报名记录 * * 普通浏览器扫码报名时拿不到企业微信成员账号,改用手机号做去重依据 */ default WxCpActivitySignupDO selectByActivityIdAndMobile(Long activityId, String mobile) { return CollUtil.getFirst(selectList(new LambdaQueryWrapperX() .eq(WxCpActivitySignupDO::getActivityId, activityId) .eq(WxCpActivitySignupDO::getMobile, mobile) .orderByAsc(WxCpActivitySignupDO::getId))); } default List selectListByActivityId(Long activityId) { return selectList(new LambdaQueryWrapperX() .eq(WxCpActivitySignupDO::getActivityId, activityId) .orderByAsc(WxCpActivitySignupDO::getId)); } default PageResult selectPage(WxCpSignupPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(WxCpActivitySignupDO::getActivityId, reqVO.getActivityId()) .likeIfPresent(WxCpActivitySignupDO::getName, reqVO.getName()) .likeIfPresent(WxCpActivitySignupDO::getMobile, reqVO.getMobile()) .eqIfPresent(WxCpActivitySignupDO::getStatus, reqVO.getStatus()) .orderByDesc(WxCpActivitySignupDO::getId)); } }