using OpenAuth.Repository.Domain;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OpenAuth.App.ServiceApp.DroneDocking.Response
{
    public class DroneDockRes
    {
        public string id { get; set; }

        /// <summary>
        /// Desc:无人机机场设备唯一id（多个）
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string deviceid { get; set; }

        /// <summary>
        /// Desc:业务类型，用于标识数据来源
        /// Default:
        /// Nullable:False
        /// </summary>           
        public string bizidname { get; set; }

        /// <summary>
        /// Desc:下发任务名称
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string taskname { get; set; }

        /// <summary>
        /// Desc:下发任务id
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string taskid { get; set; }

        /// <summary>
        /// Desc:数据类型，	用于后续成果上传获取上传路径
        /// Default:
        /// Nullable:False
        /// </summary>           
        public string datacode { get; set; }
        /// <summary>
        /// 任务是否开始执行（0未开始，1已开始，2已完成，3已取消）
        /// </summary>
        public int state { get; set; }

        public DateTime? createtime { get; set; }
        public List<DetailRes> tasklist { get; set; }
    }

    public class DetailRes
    {
        public string id { get; set; }

        /// <summary>
        /// Desc:图斑标识码
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string bsm { get; set; }

        /// <summary>
        /// Desc:县级行政区代码
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string xzqdm { get; set; }

        /// <summary>
        /// Desc:地块编号
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string dkbh { get; set; }

        /// <summary>
        /// Desc:地块类型
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string dklx { get; set; }

        /// <summary>
        /// Desc:子地块编号
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string zdkbh { get; set; }

        /// <summary>
        /// Desc:地块名称
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string dkmc { get; set; }

        /// <summary>
        /// Desc:地块面积
        /// Default:
        /// Nullable:True
        /// </summary>           
        public decimal? dkmj { get; set; }

        /// <summary>
        /// Desc:地块范围，cgcs2000的经纬度坐标，wkt格式
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string dkfw { get; set; }

        /// <summary>
        /// Desc:备注
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string bz { get; set; }

        /// <summary>
        /// Desc:任务id，对应任务表id
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string taskid { get; set; }
        //飞行任务id
        public string flighttaskid { get; set; }
        public int? Status { get; set; }
    }


    public class DroneDockflightRes
    {
        /// <summary>
        /// Desc:业务类型，用于标识数据来源
        /// Default:
        /// Nullable:False
        /// </summary>           
        public string bizidname { get; set; }

        /// <summary>
        /// Desc:下发任务名称
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string taskname { get; set; }

        /// <summary>
        /// Desc:任务开始执行时间（yyyy-MM-ddHH:mm:ss）
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string taskExecuteTime { get; set; }

        /// <summary>
        /// Desc:数据类型，	用于后续成果上传获取上传路径
        /// Default:
        /// Nullable:False
        /// </summary>           
        public string waylineName { get; set; }
        /// <summary>
        /// 0 计划执行 1 指点飞行
        /// </summary>
        public int flightTaskType { get; set; }
        //0 执行成功 1 待执行 2 执行中 3 执行失败 4 其他错误
        public int flightTaskState { get; set; }
        public List<DroneDocktaskdetail> tasklist { get; set; }
    }
}
