package cn.iocoder.yudao.module.mes.dal.mysql.qc.ipqc;
|
|
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.qc.ipqc.vo.MesQcIpqcPageReqVO;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.qc.ipqc.MesQcIpqcDO;
|
import org.apache.ibatis.annotations.Mapper;
|
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* MES 过程检验单(IPQC) Mapper
|
*
|
* @author 超级管理员
|
*/
|
@Mapper
|
public interface MesQcIpqcMapper extends BaseMapperX<MesQcIpqcDO> {
|
|
default PageResult<MesQcIpqcDO> selectPage(MesQcIpqcPageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<MesQcIpqcDO>()
|
.likeIfPresent(MesQcIpqcDO::getCode, reqVO.getCode())
|
.eqIfPresent(MesQcIpqcDO::getType, reqVO.getType())
|
.eqIfPresent(MesQcIpqcDO::getWorkOrderId, reqVO.getWorkOrderId())
|
.eqIfPresent(MesQcIpqcDO::getItemId, reqVO.getItemId())
|
.eqIfPresent(MesQcIpqcDO::getCheckResult, reqVO.getCheckResult())
|
.eqIfPresent(MesQcIpqcDO::getStatus, reqVO.getStatus())
|
.eqIfPresent(MesQcIpqcDO::getInspectorUserId, reqVO.getInspectorUserId())
|
.betweenIfPresent(MesQcIpqcDO::getInspectDate, reqVO.getInspectDate())
|
.orderByDesc(MesQcIpqcDO::getId));
|
}
|
|
default MesQcIpqcDO selectByCode(String code) {
|
return selectOne(MesQcIpqcDO::getCode, code);
|
}
|
|
default List<MesQcIpqcDO> selectListBySourceDoc(Integer sourceDocType, Long sourceDocId) {
|
return selectList(new LambdaQueryWrapperX<MesQcIpqcDO>()
|
.eq(MesQcIpqcDO::getSourceDocType, sourceDocType)
|
.eq(MesQcIpqcDO::getSourceDocId, sourceDocId)
|
.orderByDesc(MesQcIpqcDO::getId));
|
}
|
|
/**
|
* 按导入去重键查询:同一 生产工单 + 检验类型 + 工位 + 检测日期 视为同一批过程检验数据
|
*/
|
default List<MesQcIpqcDO> selectListByImportKey(Long workOrderId, Integer type, Long workstationId,
|
LocalDateTime inspectDate) {
|
return selectList(new LambdaQueryWrapperX<MesQcIpqcDO>()
|
.eq(MesQcIpqcDO::getWorkOrderId, workOrderId)
|
.eq(MesQcIpqcDO::getType, type)
|
.eq(MesQcIpqcDO::getWorkstationId, workstationId)
|
.eq(inspectDate != null, MesQcIpqcDO::getInspectDate, inspectDate)
|
.isNull(inspectDate == null, MesQcIpqcDO::getInspectDate)
|
.orderByAsc(MesQcIpqcDO::getId));
|
}
|
|
}
|