yangys
2025-09-25 31ecdb8c700529a59dd762f0c47f0ed9c66d5092
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
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<MachineBackTaskMapper, MachineBackTask> {
 
    @Transactional(readOnly = true)
    public IPage<MachineBackTaskVO> 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<MachineBackTask> 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);
    }
}