using System.Text.Json.Serialization;

namespace DataSharing.Share.Dtos.ZiGong.TianQue
{
    public class PushOrderDto
    {
        /// <summary>
        /// 唯一标识
        /// </summary>
        [JsonPropertyName("replyCode")]
        public string? ReplyCode { get; set; }

        /// <summary>
        /// 经度
        /// </summary>
        [JsonPropertyName("lon")]
        public string? Lon { get; set; }

        /// <summary>
        /// 纬度
        /// </summary>
        [JsonPropertyName("lat")]
        public string? Lat { get; set; }

        /// <summary>
        /// 诉求类型名称
        /// </summary>
        [JsonPropertyName("typeName")]
        public string? TypeName { get; set; }

        /// <summary>
        /// 事发时间
        /// </summary>
        [JsonPropertyName("occurDate")]
        public string? OccurDate { get; set; }

        /// <summary>
        /// 详细地址
        /// </summary>
        [JsonPropertyName("detailAddress")]
        public string? DetailAddress { get; set; }

        /// <summary>
        /// 线索主题
        /// </summary>
        [JsonPropertyName("topic")]
        public string? Topic { get; set; }

        /// <summary>
        /// 详细内容
        /// </summary>
        [JsonPropertyName("detailContent")]
        public string? DetailContent { get; set; }

        /// <summary>
        ///   正试接口  其它测试接口
        /// </summary>
        [JsonPropertyName("prod")]
        public bool Prod { get; set; }

        /// <summary>
        /// 热点分类大类
        /// </summary>
        [JsonPropertyName("rootCategoryInfo")]
        public string? RootCategoryInfo { get; set; }

        /// <summary>
        /// 热点分类子类
        /// </summary>
        [JsonPropertyName("categoryInfo")]
        public string? CategoryInfo { get; set; }

        /// <summary>
        /// 截至时间
        /// </summary>
        [JsonPropertyName("deadLine")]
        public string? DeadLine { get; set; }

        /// <summary>
        /// 是否高频举报 0:否，1：是
        /// </summary>
        [JsonPropertyName("isFrequentReporting")]
        public string? IsFrequentReporting { get; set; }

        /// <summary>
        /// 附件信息
        /// </summary>
        [JsonPropertyName("files")]
        public List<FilesDto>? Files { get; set; }

        /// <summary>
        /// 反映人信息
        /// </summary>
        [JsonPropertyName("personList")]
        public List<PersonInfoDto>? PersonList { get; set; }
    }

    /// <summary>
    /// 附件信息
    /// </summary>
    public class FilesDto
    {
        /// <summary>
        ///文件名称
        /// </summary>
        [JsonPropertyName("fileName")]
        public string? FileName { get; set; }

        /// <summary>
        /// 文件地址
        /// </summary>
        [JsonPropertyName("fileContent")]
        public string? FileContent { get; set; }
    }

    /// <summary>
    /// 反映人信息
    /// </summary>
    public class PersonInfoDto
    {
        /// <summary>
        /// 姓名
        /// </summary>
        [JsonPropertyName("reflectUserName")]
        public string? ReflectUserName { get; set; }

        /// <summary>
        /// 电话
        /// </summary>
        [JsonPropertyName("reflectPhone")]
        public string? ReflectPhone { get; set; }

        /// <summary>
        /// 
        /// </summary>
        [JsonPropertyName("reflectCardId")]
        public string? ReflectCardId { get; set; }
    }
}
