/* * 【机场1】从 dock2 原类 com.ard.sample.wayline.model.dto.WaylineTaskCreateDTO 复制/独立适配(DJI Dock 1 / M30)。 * 与 dock2 原类同服务共存;本文件内的适配差异以「// 机场1:」内联注释标出。 */ package com.ard.sample.dock1.wayline.model.dto; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import com.ard.sample.wayline.model.dto.WaylineSimulateMissionDTO; import com.ard.sample.wayline.model.dto.WaylineTaskCreateDTO; import com.ard.sample.wayline.model.dto.WaylineTaskFileDTO; /** * @author sean * @version 1.1 * @date 2022/6/1 */ // 序列化时忽略所有 null 字段 @JsonInclude(JsonInclude.Include.NON_NULL) @Data @Builder @AllArgsConstructor @NoArgsConstructor public class Dock1WaylineTaskCreateDTO { /** * 计划 ID * */ @JsonProperty("flight_id") private String flightId; /** * 任务类型 "0":"立即任务","1":"定时任务","2":"条件任务" * 立即任务和定时任务均由execute_time指定执行时间; * 条件任务支持ready_conditions字段指定任务就绪条件, * 设备可在指定时间段内满足就绪条件后即可执行; * 立即任务媒体上传优先级最高, * 定时任务和条件任务媒体上传优先级相同 * */ @JsonProperty("task_type") private Integer taskType; // 机场1:C4 dock1(M30)官方无 wayline_precision_type(waylineType)字段,已剔除不下发 /** * 开始执行时间 * 任务开始执行时间毫秒时间戳。可选字段。当 task_type 为 0 或 1 时必填,为 2 时非必填。 * */ @JsonProperty("execute_time") private Long executeTime; /** * 航线文件对象 * */ @JsonProperty("file") private WaylineTaskFileDTO file; /** * 返航高度 "max":1500,"min":20,"unit_name":"米 / m" * */ @JsonProperty("rth_altitude") private Integer rthAltitude; // 机场1:C4 dock1(M30)官方无 rth_mode(rthMode)字段,已剔除不下发 /** * 遥控器失控动作 "0":"返航","1":"悬停","2":"降落" * 失控动作,当前固定传的值是 0,即返航。注意该枚举值定义跟飞控跟机场定义的不一致,机场端会进行转换。 * */ @JsonProperty("out_of_control_action") private Integer outOfControlAction; // @JsonProperty("simulate_mission") // private WaylineSimulateMissionDTO simulateMission; }