package cn.iocoder.yudao.module.mes.dal.mysql.cal.schedule; 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.mes.controller.admin.cal.schedule.vo.MesCalScheduleDetailPageReqVO; import cn.iocoder.yudao.module.mes.dal.dataobject.cal.schedule.MesCalScheduleDetailDO; import org.apache.ibatis.annotations.Mapper; import java.util.Collection; import java.util.List; /** * MES 员工级排班明细 Mapper * * @author 超级管理员 */ @Mapper public interface MesCalScheduleDetailMapper extends BaseMapperX { default PageResult selectPage(MesCalScheduleDetailPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(MesCalScheduleDetailDO::getPlanId, reqVO.getPlanId()) .eqIfPresent(MesCalScheduleDetailDO::getTeamId, reqVO.getTeamId()) .eqIfPresent(MesCalScheduleDetailDO::getUserId, reqVO.getUserId()) .geIfPresent(MesCalScheduleDetailDO::getDay, reqVO.getStartDay()) .leIfPresent(MesCalScheduleDetailDO::getDay, reqVO.getEndDay()) .orderByAsc(MesCalScheduleDetailDO::getDay)); } default List selectList(MesCalScheduleDetailPageReqVO reqVO) { return selectList(new LambdaQueryWrapperX() .eqIfPresent(MesCalScheduleDetailDO::getPlanId, reqVO.getPlanId()) .eqIfPresent(MesCalScheduleDetailDO::getTeamId, reqVO.getTeamId()) .eqIfPresent(MesCalScheduleDetailDO::getUserId, reqVO.getUserId()) .geIfPresent(MesCalScheduleDetailDO::getDay, reqVO.getStartDay()) .leIfPresent(MesCalScheduleDetailDO::getDay, reqVO.getEndDay()) .orderByAsc(MesCalScheduleDetailDO::getDay)); } default List selectListByPlanId(Long planId) { return selectList(MesCalScheduleDetailDO::getPlanId, planId); } default List selectListByUserIdBetween(Long userId, java.time.LocalDateTime startDay, java.time.LocalDateTime endDay) { return selectList(new LambdaQueryWrapperX() .eq(MesCalScheduleDetailDO::getUserId, userId) .geIfPresent(MesCalScheduleDetailDO::getDay, startDay) .leIfPresent(MesCalScheduleDetailDO::getDay, endDay) .orderByAsc(MesCalScheduleDetailDO::getDay)); } default void deleteByPlanId(Long planId) { delete(MesCalScheduleDetailDO::getPlanId, planId); } default void deleteByTeamId(Long teamId) { delete(MesCalScheduleDetailDO::getTeamId, teamId); } }