package cn.iocoder.yudao.module.mes.dal.mysql.pro.scan;
|
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.pro.scan.MesProScanEventDO;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.module.mes.controller.admin.pro.scan.vo.MesProScanEventPageReqVO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
@Mapper
|
public interface MesProScanEventMapper extends BaseMapperX<MesProScanEventDO> {
|
default MesProScanEventDO selectByEventIdForUpdate(String eventId) {
|
return selectOne(new LambdaQueryWrapperX<MesProScanEventDO>()
|
.eq(MesProScanEventDO::getEventId, eventId).last("FOR UPDATE"));
|
}
|
default PageResult<MesProScanEventDO> selectPage(MesProScanEventPageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<MesProScanEventDO>()
|
.eqIfPresent(MesProScanEventDO::getEventId, reqVO.getEventId())
|
.likeIfPresent(MesProScanEventDO::getBagCode, reqVO.getBagCode())
|
.likeIfPresent(MesProScanEventDO::getBatchCode, reqVO.getBatchCode())
|
.eqIfPresent(MesProScanEventDO::getDeviceCode, reqVO.getDeviceCode())
|
.eqIfPresent(MesProScanEventDO::getStatus, reqVO.getStatus())
|
.eqIfPresent(MesProScanEventDO::getErrorCode, reqVO.getErrorCode())
|
.orderByDesc(MesProScanEventDO::getEventTime));
|
}
|
|
default MesProScanEventDO selectLatest(String deviceCode) {
|
return selectOne(new LambdaQueryWrapperX<MesProScanEventDO>()
|
.eqIfPresent(MesProScanEventDO::getDeviceCode, deviceCode)
|
.orderByDesc(MesProScanEventDO::getEventTime).last("LIMIT 1"));
|
}
|
}
|