package cn.iocoder.yudao.module.bpm.dal.mysql.oa; 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.bpm.controller.admin.oa.vo.OaNoticePageReqVO; import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.OaNoticeDO; import org.apache.ibatis.annotations.Mapper; import java.util.Set; @Mapper public interface OaNoticeMapper extends BaseMapperX { default PageResult selectPage(OaNoticePageReqVO reqVO, Set noticeIds) { LambdaQueryWrapperX wrapper = new LambdaQueryWrapperX() .likeIfPresent(OaNoticeDO::getTitle, reqVO.getTitle()) .eqIfPresent(OaNoticeDO::getType, reqVO.getType()) .eqIfPresent(OaNoticeDO::getStatus, reqVO.getStatus()) .eqIfPresent(OaNoticeDO::getSendScope, reqVO.getSendScope()) .orderByDesc(OaNoticeDO::getIsTop) .orderByDesc(OaNoticeDO::getId); if (noticeIds != null) { wrapper.in(OaNoticeDO::getId, noticeIds); } return selectPage(reqVO, wrapper); } }