1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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<MesCollectRealtimeHistoryDO> {
 
    default PageResult<MesCollectRealtimeHistoryDO> selectPage(MesCollectRealtimeHistoryPageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<MesCollectRealtimeHistoryDO>()
                .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<MesCollectRealtimeHistoryDO>()
                .lt(MesCollectRealtimeHistoryDO::getCollectTime, before)
                .last("LIMIT " + limit));
    }
 
}