package com.zy.core.model.command; import com.zy.common.model.NavigateNode; import lombok.Data; import java.io.Serializable; import java.util.ArrayList; import java.util.List; @Data public class ShuttleAssignCommand implements Serializable { private static final long serialVersionUID = 1L; /** * 四向穿梭车号 */ private Integer shuttleNo = 0; /** * 设备ID */ private Integer deviceId; /** * 任务号 */ private Integer taskNo = 0; /** * 设备工作号 */ private Integer deviceTaskNo = 0; /** * 作业类型 * 1: 入库 * 2: 出库 * 3: 托盘顶升 * 4: 托盘下降 * 5: 左移 * 6: 右移 * 7: 前移 * 8: 后移 * 9: 充电 */ private Integer taskMode = 0; /** * 源库位 */ private String sourceLocNo; /** * 目标库位 */ private String locNo; /** * 命令list */ private List commands = new ArrayList<>(); /** * 是否自动,true:自动模式,false:手动模式 */ private Boolean auto = true; /** * 是否为充电任务。true:是,false:否 */ private Boolean charge = false; /** * 当前任务所占用的节点list */ private List nodes; public List getNodesDeepCopy() { if (this.nodes == null) { return null; } List navigateNodes = new ArrayList<>(); for (NavigateNode node : nodes) { navigateNodes.add(node.clone()); } return navigateNodes; } }