package cn.iocoder.yudao.module.mes.dal.mysql.collect; 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.collect.vo.MesCollectRealtimeHistoryPageReqVO; import cn.iocoder.yudao.module.mes.dal.dataobject.collect.MesCollectRealtimeHistoryDO; import org.apache.ibatis.annotations.Mapper; import java.time.LocalDateTime; /** * MES 数采-实时状态历史 Mapper * * @author 超级管理员 */ @Mapper public interface MesCollectRealtimeHistoryMapper extends BaseMapperX { default PageResult selectPage(MesCollectRealtimeHistoryPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(MesCollectRealtimeHistoryDO::getDeviceCode, reqVO.getDeviceCode()) .eqIfPresent(MesCollectRealtimeHistoryDO::getMachineryId, reqVO.getMachineryId()) .eqIfPresent(MesCollectRealtimeHistoryDO::getTaskId, reqVO.getTaskId()) .eqIfPresent(MesCollectRealtimeHistoryDO::getWorkOrderId, reqVO.getWorkOrderId()) .betweenIfPresent(MesCollectRealtimeHistoryDO::getCollectTime, reqVO.getCollectTime()) .orderByDesc(MesCollectRealtimeHistoryDO::getCollectTime)); } default int deleteBefore(LocalDateTime before, int limit) { return delete(new LambdaQueryWrapperX() .lt(MesCollectRealtimeHistoryDO::getCollectTime, before) .last("LIMIT " + limit)); } }