#
Junjie
4 天以前 6daf900a09adcca981f620744bf89851654d88e0
src/main/java/com/zy/core/thread/LiftThread.java
New file
@@ -0,0 +1,57 @@
package com.zy.core.thread;
import com.zy.common.ExecuteSupport;
import com.zy.core.ThreadHandler;
import com.zy.core.enums.*;
import com.zy.core.model.CommandResponse;
import com.zy.core.model.command.LiftCommand;
import com.zy.core.model.protocol.LiftProtocol;
import com.zy.core.model.protocol.LiftStaProtocol;
import java.util.List;
public interface LiftThread extends ThreadHandler {
    LiftProtocol getStatus();//获取提升机状态
    LiftProtocol getStatus(boolean clone);//获取提升机状态
    List<LiftStaProtocol> getLiftStaProtocols();
    CommandResponse pickAndPut(LiftCommand command);//取放货指令
    CommandResponse shuttleSwitch(LiftCommand command);//小车换层
    CommandResponse move(LiftCommand command);//小车移动
    CommandResponse switchIOMode(LiftCommand command);//切换出入库模式
    CommandResponse reset();//复位
    boolean isIdle();//是否空闲
    boolean isDeviceIdle();//设备是否空闲
    boolean isDeviceIdle(ExecuteSupport support);//设备是否空闲
    boolean setProtocolStatus(LiftProtocolStatusType status);//设置工作状态
    boolean setSyncTaskNo(Integer taskNo);//设置工作号
    int generateDeviceTaskNo(int taskNo, LiftTaskModeType type);//生成硬件设备工作号
    String getCurrentLocNo();
    //***************获取命令*****************
    LiftCommand getPickAndPutCommand(Integer taskNo, Integer pick, Integer put);//取放货指令
    LiftCommand getShuttleSwitchCommand(Integer taskNo, Integer pick, Integer put);//小车换层
    LiftCommand getMoveCommand(Integer taskNo, Integer pick, Integer put);//提升机移动
    LiftCommand getSwitchIOCommand(Integer taskNo, LiftIoModeType mode);
    LiftCommand getResetCommand(Integer taskNo);
}