using DataSharing.SendTask;
using SqlSugar;
using System.ComponentModel;

namespace DataSharing.Province.SendTask.SubmitCaseProcess
{
    /// <summary>
    /// 业务汇聚-服务工单处理过程推送任务数据
    /// </summary>
    [Description("业务汇聚-服务工单处理过程推送任务数据")]
    [SugarIndex("index_dssendtasksubmitcaseprocess_caseid", nameof(CaseId), OrderByType.Desc)]
    [SugarIndex("index_dssendtasksubmitcaseprocess_provinceno", nameof(ProvinceNo), OrderByType.Desc)]
    [SugarIndex("index_dssendtasksubmitcaseprocess_firsttime", nameof(FirstTime), OrderByType.Desc)]
    [SugarIndex("index_dssendtasksubmitcaseprocess_lasttime", nameof(LastTime), OrderByType.Desc)]
    [SugarIndex("index_dssendtasksubmitcaseprocess_generationtime", nameof(GenerationTime), OrderByType.Desc)]
    public class DsSendTaskSubmitCaseProcess : BaseSendTask
    {
        /// <summary>
        /// 过程唯一ID
        /// </summary>
        [SugarColumn(ColumnDescription = "过程唯一ID")]
        public string? CaseId {  get; set; }

        /// <summary>
        /// 组装参数
        /// </summary>
        [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true, ColumnDescription = "组装参数")]
        public Share.Dtos.Province.HuiJu.SubmitCaseProcessInfo RequestData { get; set; }

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