using DataSharing.SendTask;
using Hotline.Share.Dtos.File;
using SqlSugar;
using System.ComponentModel;

namespace DataSharing.Province.SendTask.ProvinceOther
{
    /// <summary>
    /// 省平台其他业务推送任务数据
    /// </summary>
    [Description("省平台其他业务推送任务数据")]

    [SugarIndex("index_dssendtaskprovinceother_provinceno", nameof(ProvinceNo), OrderByType.Desc)]
    [SugarIndex("index_dssendtaskprovinceother_firsttime", nameof(FirstTime), OrderByType.Desc)]
    [SugarIndex("index_dssendtaskprovinceother_lasttime", nameof(LastTime), OrderByType.Desc)]
    [SugarIndex("index_dssendtaskprovinceother_generationtime", nameof(GenerationTime), OrderByType.Desc)]
    public class DsSendTaskProvinceOther : BaseSendTask
    {
        /// <summary>
        /// 组装参数
        /// </summary>
        [SugarColumn(ColumnDataType = "text", ColumnDescription = "组装参数")]
        public string RequestData { get; set; }

        /// <summary>
        /// 待推送数据
        /// </summary>
        [Navigate(NavigateType.OneToOne, nameof(Id))]
        public DsWaitSendTaskProvinceOther WaitSendTaskProvinceOther { get; set; }

        /// <summary>
        /// 附件
        /// </summary>
        [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)]
        public List<FileJson>? FileJson { get; set; }

        /// <summary>
        /// 回访结果满意度
        /// </summary>
        [SugarColumn(ColumnDescription = "回访结果满意度")]
        public string? SubjectResultSatify { get; set; }

        /// <summary>
        /// 回访时间
        /// </summary>
        [SugarColumn(ColumnDescription = "回访时间")]
        public DateTime? VisitTime { get; set; }
    }
}
