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<OaNoticeDO> {
|
|
default PageResult<OaNoticeDO> selectPage(OaNoticePageReqVO reqVO, Set<Long> noticeIds) {
|
LambdaQueryWrapperX<OaNoticeDO> wrapper = new LambdaQueryWrapperX<OaNoticeDO>()
|
.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);
|
}
|
|
}
|