#
Junjie
2 天以前 73ce8bebcc5d14f3fb62a19ee677abfcdfc776b4
src/main/java/com/zy/asrs/controller/ShuttleController.java
@@ -29,13 +29,11 @@
import com.zy.core.cache.SlaveConnection;
import com.zy.core.dispatcher.ShuttleDispatchUtils;
import com.zy.core.enums.*;
import com.zy.core.model.ShuttleSlave;
import com.zy.core.model.command.ShuttleAssignCommand;
import com.zy.core.model.command.ShuttleCommand;
import com.zy.core.model.command.ShuttleRedisCommand;
import com.zy.core.model.param.ShuttleMoveLocParam;
import com.zy.core.model.protocol.ShuttleProtocol;
import com.zy.core.properties.SlaveProperties;
import com.zy.core.thread.ShuttleThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -312,11 +310,11 @@
        if (shuttleTaskModeType == ShuttleTaskModeType.MOVE_LOC_NO) {
            //移动到目标库位
            Integer mapType = NavigationMapType.NORMAL.id;
            List<NavigationMapType> mapTypes = NavigationMapType.getMapTypes(NavigationMapType.NORMAL);
            if (shuttleProtocol.getHasLift()) {
                mapType = NavigationMapType.DFX.id;
                mapTypes = NavigationMapType.getMapTypes(NavigationMapType.DFX);
            }
            List<ShuttleCommand> commands = shuttleOperaUtils.getStartToTargetCommands(shuttleProtocol.getCurrentLocNo(), param.getDistLocNo(), mapType, assignCommand, shuttleThread);
            List<ShuttleCommand> commands = shuttleOperaUtils.getStartToTargetCommands(shuttleProtocol.getCurrentLocNo(), param.getDistLocNo(), mapTypes, assignCommand, shuttleThread);
            if (commands == null) {
                throw new CoolException("路径计算失败");
            }
@@ -338,17 +336,13 @@
            //托盘下降
            List<ShuttleCommand> commands = shuttleOperaUtils.getShuttleLiftCommand(assignCommand, shuttleThread, false);
            assignCommand.setCommands(commands);
        } else if (shuttleTaskModeType == ShuttleTaskModeType.CHARGE) {
            //充电开关
            boolean charge = false;
            if (shuttleProtocol.getHasCharge()) {
                //已充电,关闭充电
                charge = false;
            }else {
                //开启充电
                charge = true;
            }
            List<ShuttleCommand> commands = shuttleOperaUtils.getShuttleChargeCommand(assignCommand, shuttleThread, charge);
        } else if (shuttleTaskModeType == ShuttleTaskModeType.CHARGE_ON) {
            //充电开
            List<ShuttleCommand> commands = shuttleOperaUtils.getShuttleChargeCommand(assignCommand, shuttleThread, true);
            assignCommand.setCommands(commands);
        } else if (shuttleTaskModeType == ShuttleTaskModeType.CHARGE_OFF) {
            //充电关
            List<ShuttleCommand> commands = shuttleOperaUtils.getShuttleChargeCommand(assignCommand, shuttleThread, false);
            assignCommand.setCommands(commands);
        } else if (shuttleTaskModeType == ShuttleTaskModeType.RESET) {
            //复位
@@ -360,7 +354,7 @@
            return R.ok();
        } else if (shuttleTaskModeType == ShuttleTaskModeType.MOVE_LOC_NO_TASK) {
            //移动到目标库位(生成移动任务)
            shuttleDispatchUtils.dispatchShuttle(commonService.getWorkNo(WrkIoType.LOC_MOVE.id), param.getDistLocNo(), param.getShuttleNo());
            shuttleDispatchUtils.dispatchShuttle(commonService.getWorkNo(WrkIoType.SHUTTLE_MOVE.id), param.getDistLocNo(), param.getShuttleNo());
            return R.ok();
        } else if (shuttleTaskModeType == ShuttleTaskModeType.SHUTTLE_DEMO_OPEN) {
            //演示模式-开