package org.springblade.mdm.gkw.task.service; import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BizServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.mdm.gkw.programnode.vo.ProgramNameVO; import org.springblade.mdm.gkw.task.entity.MachineBackTask; import org.springblade.mdm.gkw.task.mapper.MachineBackTaskMapper; import org.springblade.mdm.gkw.task.vo.MachineBackTaskQueryVO; import org.springblade.mdm.gkw.task.vo.MachineBackTaskVO; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Optional; /** * 机床回传任务 * * @author yangys */ @Slf4j @Service @AllArgsConstructor public class MachineBackTaskService extends BizServiceImpl { @Transactional(readOnly = true) public IPage pageQuery(MachineBackTaskQueryVO query) { return baseMapper.pageQuery(Condition.getPage(query),query); } /** * 根据程序名结构获取任务数据 * @param vo 程序名VO * @param deviation 临时更改单号 * @return 回传任务肢体/or null */ public MachineBackTask queryMatchTaskByProgramName(ProgramNameVO vo,String deviation) { Optional optTask = lambdaQuery().eq(MachineBackTask::getProgramName,vo.logicProgramName()).eq(vo.getLgPart()!=null,MachineBackTask::getDeviation,deviation) .eq(MachineBackTask::getStatus,MachineBackTask.STATUS_PENDING).last("limit 1").oneOpt(); return optTask.orElse(null); } }