#
vincentlu
昨天 d64ddaa5a1db6098a498a0c74d723068851cb088
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.framework.exception.CoolException;
import com.zy.acs.manager.core.domain.TaskPosDto;
import com.zy.acs.manager.manager.entity.Segment;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.ActionStsType;
@@ -154,16 +153,35 @@
    }
    @Override
    public Segment getCurrRunningSeg(Long agvId, Long codeId) {
    public Segment getCurrWaitingSeg(Long travelId, Long agvId) {
        List<Segment> segments = this.list(new LambdaQueryWrapper<Segment>()
                .eq(Segment::getTravelId, travelId)
                .eq(Segment::getAgvId, agvId)
                .eq(Segment::getState, SegmentStateType.RUNNING.toString())
                .eq(Segment::getEndNode, codeId)
                .eq(Segment::getState, SegmentStateType.WAITING.toString())
                .orderByDesc(Segment::getId)
        );
        if (Cools.isEmpty(segments)) {
        }
        return segments.stream().findFirst().orElse(null);
    }
    @Override
    public Segment getCurrRunningSeg(Long travelId, Long agvId, Long codeId) {
        if (null == agvId) {
            return null;
        }
        LambdaQueryWrapper<Segment> wrapper = new LambdaQueryWrapper<Segment>()
                .eq(Segment::getAgvId, agvId)
                .eq(Segment::getState, SegmentStateType.RUNNING.toString());
        if (null != travelId) {
            wrapper.eq(Segment::getTravelId, travelId);
        }
        if (null != codeId) {
            wrapper.eq(Segment::getEndNode, codeId);
        }
        wrapper.orderByDesc(Segment::getId);
        List<Segment> segments = this.list(wrapper);
        if (Cools.isEmpty(segments)) {
        }
        return segments.stream().findFirst().orElse(null);
    }
@@ -171,22 +189,6 @@
    @Override
    public List<Integer> selectUsedBackpacks(Long travelId, Long agvId) {
        return this.baseMapper.selectUsedBackpacks(agvId, travelId);
    }
    @Override   //todo
    public Segment getRollerWaiting(Long agvId, Long codeId, TaskPosDto.PosType posType) {
        List<Segment> segments = this.list(new LambdaQueryWrapper<Segment>()
                .eq(Segment::getAgvId, agvId)
                .eq(Segment::getState, SegmentStateType.WAITING.toString())
                .eq(Segment::getEndNode, codeId)
                .eq(Segment::getPosType, posType.toString())
                .eq(Segment::getRollerWaiting, 1)
                .orderByDesc(Segment::getId)
        );
        if (Cools.isEmpty(segments)) {
            return null;
        }
        return segments.get(0);
    }
    @Override