package com.vincent.rsf.openApi.entity.params; import com.alibaba.fastjson.JSON; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.ArrayList; import java.util.List; @Schema(description = "任务下发请求(2.1.2 国标)") @Data public class RCSTaskSubmitRequest { @Schema(description = "任务类型", example = "TRANSPORT") private String taskType; @Schema(description = "目标路径点列表") private List targetRoute = new ArrayList(); @Schema(description = "初始优先级") private Integer initPriority; @Schema(description = "截止时间") private String deadline; @Schema(description = "机器人类型") private String robotType; @Schema(description = "指定机器人编码列表") private List robotCode; @Schema(description = "是否可中断") private Integer interrupt; @Schema(description = "机器人任务编码", example = "tt13123123123") private String robotTaskCode; @Schema(description = "组编码") private String groupCode; @Schema(description = "扩展信息(如 carrierInfo 等)") private Object extra; public RCSTaskSubmitRequest() { } public RCSTaskSubmitRequest(MissionTaskIssueParam param) { setTaskType("TRANSPORT"); setRobotTaskCode(param.getTaskNo()); /*执行步骤*/ getTargetRoute().add(new RCSTargetRouteItem() {{ setSeq(0);//顺序号 setType("ZONE"); setCode("A1"); setOperation("COLLECT"); }}); getTargetRoute().add(new RCSTargetRouteItem() {{ setSeq(1); setType("ZONE"); setCode("S001"); setOperation("DELIVERY"); }}); } public String toJSONObject() { return JSON.toJSONString(this); } }