#
Junjie
21 小时以前 b6428016edf3de843020bc95fd1708d3bb1961e5
src/main/java/com/zy/core/action/ForkLiftAction.java
@@ -148,8 +148,42 @@
            response = forkLiftThread.pickAndPut(command);
        } else if (command.getMode().intValue() == ForkLiftTaskModeType.SHUTTLE_SWITCH.id) {
            response = forkLiftThread.shuttleSwitch(command);
        } else if (command.getMode().intValue() == ForkLiftTaskModeType.MOVE.id) {
            response = forkLiftThread.move(command);
        }
        return response;
    }
    //申请提升机资源
    public synchronized boolean applyForkLift(Integer liftNo, Integer waitBindTaskNo) {
        ForkLiftThread forkLiftThread = (ForkLiftThread) SlaveConnection.get(SlaveType.ForkLift, liftNo);
        if (forkLiftThread == null) {
            return false;
        }
        ForkLiftProtocol forkLiftProtocol = forkLiftThread.getStatus();
        if (forkLiftProtocol == null) {
            return false;
        }
        if (!forkLiftThread.isIdle()) {
            return false;
        }
        List<WrkMast> wrkMasts = wrkMastService.selectLiftWrkMast(liftNo);
        if (!wrkMasts.isEmpty()) {
            return false;
        }
        if (waitBindTaskNo != null) {
            WrkMast wrkMast = wrkMastService.selectByWorkNo(waitBindTaskNo);
            if (wrkMast == null) {
                return false;
            }
            wrkMast.setLiftNo(liftNo);
            wrkMast.setModiTime(new Date());
            wrkMastService.updateById(wrkMast);
        }
        return true;
    }
}