package com.zy.asrs.wcs.core.model.command;
|
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.core.type.TypeReference;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.zy.asrs.wcs.core.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<ShuttleCommand> commands = new ArrayList<>();
|
|
/**
|
* 是否自动,true:自动模式,false:手动模式
|
*/
|
private Boolean auto = true;
|
|
|
/**
|
* 是否为充电任务。true:是,false:否
|
*/
|
private Boolean charge = false;
|
|
/**
|
* 当前任务所占用的节点list
|
*/
|
private List<NavigateNode> nodes;
|
|
public List<NavigateNode> getNodesDeepCopy() {
|
List<NavigateNode> navigateNodes = new ArrayList<>();
|
for (NavigateNode node : nodes) {
|
navigateNodes.add(node.clone());
|
}
|
return navigateNodes;
|
}
|
|
}
|