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.train.SafetyAccidentPageReqVO;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.safety.SafetyAccidentDO;
|
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
import java.util.List;
|
|
/**
|
* 安全生产 - 事故登记 Mapper
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface SafetyAccidentMapper extends BaseMapperX<SafetyAccidentDO> {
|
|
default PageResult<SafetyAccidentDO> selectPage(SafetyAccidentPageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<SafetyAccidentDO>()
|
.likeIfPresent(SafetyAccidentDO::getCode, reqVO.getCode())
|
.likeIfPresent(SafetyAccidentDO::getTitle, reqVO.getTitle())
|
.eqIfPresent(SafetyAccidentDO::getAccidentType, reqVO.getAccidentType())
|
.eqIfPresent(SafetyAccidentDO::getLevel, reqVO.getLevel())
|
.eqIfPresent(SafetyAccidentDO::getStatus, reqVO.getStatus())
|
.betweenIfPresent(SafetyAccidentDO::getOccurTime, reqVO.getOccurTime())
|
.orderByDesc(SafetyAccidentDO::getOccurTime)
|
.orderByDesc(SafetyAccidentDO::getId));
|
}
|
|
default List<SafetyAccidentDO> selectListBetween(java.time.LocalDateTime begin, java.time.LocalDateTime end) {
|
return selectList(new LambdaQueryWrapperX<SafetyAccidentDO>()
|
.geIfPresent(SafetyAccidentDO::getOccurTime, begin)
|
.leIfPresent(SafetyAccidentDO::getOccurTime, end)
|
.orderByAsc(SafetyAccidentDO::getOccurTime));
|
}
|
|
@Select("SELECT CONCAT(#{prefix}, LPAD(COUNT(*) + 1, 4, '0')) FROM safety_accident WHERE code LIKE CONCAT(#{prefix}, '%')")
|
String selectNextCode(@Param("prefix") String prefix);
|
|
}
|