package cn.iocoder.yudao.module.mes.dal.mysql.safety;
|
|
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.safety.vo.inspection.SafetyInspectionPageReqVO;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.safety.SafetyInspectionDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* 安全生产 - 巡检记录 Mapper
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface SafetyInspectionMapper extends BaseMapperX<SafetyInspectionDO> {
|
|
default PageResult<SafetyInspectionDO> selectPage(SafetyInspectionPageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<SafetyInspectionDO>()
|
.eqIfPresent(SafetyInspectionDO::getPointId, reqVO.getPointId())
|
.eqIfPresent(SafetyInspectionDO::getPointType, reqVO.getPointType())
|
.likeIfPresent(SafetyInspectionDO::getInspector, reqVO.getInspector())
|
.eqIfPresent(SafetyInspectionDO::getResult, reqVO.getResult())
|
.betweenIfPresent(SafetyInspectionDO::getInspectTime, reqVO.getInspectTime())
|
.orderByDesc(SafetyInspectionDO::getInspectTime)
|
.orderByDesc(SafetyInspectionDO::getId));
|
}
|
|
default List<SafetyInspectionDO> selectListByTimeRange(LocalDateTime begin, LocalDateTime end) {
|
return selectList(new LambdaQueryWrapperX<SafetyInspectionDO>()
|
.geIfPresent(SafetyInspectionDO::getInspectTime, begin)
|
.leIfPresent(SafetyInspectionDO::getInspectTime, end)
|
.orderByAsc(SafetyInspectionDO::getInspectTime));
|
}
|
|
default Long selectCountByPointId(Long pointId) {
|
return selectCount(SafetyInspectionDO::getPointId, pointId);
|
}
|
|
/** 查询某点位最近一次巡检记录 */
|
default SafetyInspectionDO selectLatestByPointId(Long pointId) {
|
return selectOne(new LambdaQueryWrapperX<SafetyInspectionDO>()
|
.eq(SafetyInspectionDO::getPointId, pointId)
|
.orderByDesc(SafetyInspectionDO::getInspectTime)
|
.last("LIMIT 1"));
|
}
|
|
}
|