package cn.iocoder.yudao.module.hrm.dal.mysql.attendance; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.hrm.dal.dataobject.attendance.HrmAttendanceHolidayDO; import cn.iocoder.yudao.module.hrm.controller.admin.attendance.vo.HrmAttendanceHolidayPageReqVO; import cn.iocoder.yudao.framework.common.pojo.PageResult; import org.apache.ibatis.annotations.Mapper; import java.time.LocalDate; import java.util.List; /** * 考勤节假日配置 Mapper * * @author 芋道源码 */ @Mapper public interface HrmAttendanceHolidayMapper extends BaseMapperX { default PageResult selectPage(HrmAttendanceHolidayPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .likeIfPresent(HrmAttendanceHolidayDO::getName, reqVO.getName()) .eqIfPresent(HrmAttendanceHolidayDO::getType, reqVO.getType()) .betweenIfPresent(HrmAttendanceHolidayDO::getDate, reqVO.getStartDate(), reqVO.getEndDate()) .orderByDesc(HrmAttendanceHolidayDO::getDate)); } default HrmAttendanceHolidayDO selectByDate(LocalDate date) { return selectOne(HrmAttendanceHolidayDO::getDate, date); } default List selectListByDateBetween(LocalDate startDate, LocalDate endDate) { return selectList(new LambdaQueryWrapperX() .ge(HrmAttendanceHolidayDO::getDate, startDate) .le(HrmAttendanceHolidayDO::getDate, endDate) .orderByAsc(HrmAttendanceHolidayDO::getDate)); } }