package com.multictrl.modules.business.q20.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * Q20航线任务 - 任务配置DTO
 *
 * @author 938693313@qq.com
 * @since 1.0.0 2026/5/20
 */
@Data
@Schema(description = "任务配置信息")
public class Q20RouteMissionConfigDTO {

    @Schema(description = "完成动作：goHome / noAction / autoLand / preLand / gotoFirstWaypoint")
    @JsonProperty("finish_action")
    private String finishAction;

    @Schema(description = "完成动作附加值，finishAction=preLand时为精准降落标识，格式：{hangar_sn}-{dock_code}")
    @JsonProperty("action_value")
    private String actionValue;

    @Schema(description = "返航类型：directReturn / originalReturn")
    @JsonProperty("go_home_type")
    private String goHomeType;

    @Schema(description = "失联时退出航线：goContinue / executeLostAction")
    @JsonProperty("exit_on_rc_lost")
    private String exitOnRcLost;

    @Schema(description = "失联执行动作：goBack / landing / hover")
    @JsonProperty("execute_rc_lost_action")
    private String executeRcLostAction;

    @Schema(description = "全局返航高度(m)")
    @JsonProperty("global_RTH_height")
    private Float globalRthHeight;

    @Schema(description = "降落点海拔高度(m)，默认5")
    @JsonProperty("land_height")
    private Float landHeight = 5f;
}
