package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 无人机任务对象 drone_missions
 * 
 * @author ruoyi
 * @date 2024-07-24
 */
public class DroneMissions extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增ID */
    private Long id;

    /** 任务名称 */
    @Excel(name = "任务名称")
    private String missionName;

    /** 航线文件URL */
    @Excel(name = "航线文件URL")
    private String flightPathUrl;

    /** 航线文件MD5 */
    @Excel(name = "航线文件MD5")
    private String flightPathMd5;

    /** 返航高度 */
    @Excel(name = "返航高度")
    private Long returnAltitude;

    /** 返航高度模式 */
    @Excel(name = "返航高度模式")
    private Integer returnAltitudeMode;

    /** 遥控器失控类型 */
    @Excel(name = "遥控器失控类型")
    private Long outOfControlAction;

    /** 航线失控动作 */
    @Excel(name = "航线失控动作")
    private Integer flightControlAction;

    /** 航线精度类型 */
    @Excel(name = "航线精度类型")
    private Long waylinePrecisionType;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setMissionName(String missionName) 
    {
        this.missionName = missionName;
    }

    public String getMissionName() 
    {
        return missionName;
    }
    public void setFlightPathUrl(String flightPathUrl) 
    {
        this.flightPathUrl = flightPathUrl;
    }

    public String getFlightPathUrl() 
    {
        return flightPathUrl;
    }
    public void setFlightPathMd5(String flightPathMd5) 
    {
        this.flightPathMd5 = flightPathMd5;
    }

    public String getFlightPathMd5() 
    {
        return flightPathMd5;
    }
    public void setReturnAltitude(Long returnAltitude) 
    {
        this.returnAltitude = returnAltitude;
    }

    public Long getReturnAltitude() 
    {
        return returnAltitude;
    }
    public void setReturnAltitudeMode(Integer returnAltitudeMode) 
    {
        this.returnAltitudeMode = returnAltitudeMode;
    }

    public Integer getReturnAltitudeMode() 
    {
        return returnAltitudeMode;
    }
    public void setOutOfControlAction(Long outOfControlAction) 
    {
        this.outOfControlAction = outOfControlAction;
    }

    public Long getOutOfControlAction() 
    {
        return outOfControlAction;
    }
    public void setFlightControlAction(Integer flightControlAction) 
    {
        this.flightControlAction = flightControlAction;
    }

    public Integer getFlightControlAction() 
    {
        return flightControlAction;
    }
    public void setWaylinePrecisionType(Long waylinePrecisionType) 
    {
        this.waylinePrecisionType = waylinePrecisionType;
    }

    public Long getWaylinePrecisionType() 
    {
        return waylinePrecisionType;
    }
    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("missionName", getMissionName())
            .append("flightPathUrl", getFlightPathUrl())
            .append("flightPathMd5", getFlightPathMd5())
            .append("returnAltitude", getReturnAltitude())
            .append("returnAltitudeMode", getReturnAltitudeMode())
            .append("outOfControlAction", getOutOfControlAction())
            .append("flightControlAction", getFlightControlAction())
            .append("waylinePrecisionType", getWaylinePrecisionType())
            .append("createdAt", getCreatedAt())
            .toString();
    }
}
