using System.Text.Json.Serialization;

namespace DataSharing.Share.Dtos.Province.XieTong.Receive
{
    /// <summary>
    /// 督办工单派发
    /// </summary>
    public class SendSuperviseInfoRequest
    {
        /// <summary>
        /// 
        /// </summary>
        public ClientInfo token { get; set; }

        /// <summary>
        /// 服务工单
        /// </summary>
        public SendSuperviseInfoModel paras { get; set; }
    }

    /// <summary>
    /// 督办工单派发
    /// </summary>
    public class SendSuperviseInfoModel
    {
        /// <summary>
        /// 督办编号
        /// </summary>        
        [JsonPropertyName("SUPERVISE_SERIAL")]
        [MDisplayName("督办编号")]
        [VRequired]
        [VStringLength(0, 50)]
        public string SuperviseSerial { get; set; }

        /// <summary>
        /// 服务工单编号
        /// </summary>        
        [JsonPropertyName("CASE_SERIAL")]
        [MDisplayName("服务工单编号")]
        [VStringLength(0, 50)]
        public string CaseSerial { get; set; }

        /// <summary>
        /// 督办标题
        /// </summary>        
        [JsonPropertyName("SUPERVISE_TITLE")]
        [MDisplayName("督办标题")]
        [VRequired]
        [VStringLength(0, 50)]
        public string SuperviseTitle { get; set; }

        /// <summary>
        /// 督办内容
        /// </summary>        
        [JsonPropertyName("SUPERVISE_CONTENT")]
        [MDisplayName("督办内容")]
        [VRequired]
        public string SuperviseContent { get; set; }

        /// <summary>
        /// 督办发起人
        /// </summary>        
        [JsonPropertyName("SUPERVISE_PERSON")]
        [MDisplayName("督办发起人")]
        [VRequired]
        [VStringLength(0, 50)]
        public string SupervisePerson { get; set; }

        /// <summary>
        /// 督办发起时间
        /// </summary>        
        [JsonPropertyName("SUPERVISE_TIME")]
        [MDisplayName("督办发起时间")]
        [VRequired]
        public string? SuperviseTime { get; set; }

        /// <summary>
        /// 督办发起单位
        /// </summary>        
        [JsonPropertyName("SUPERVISE_SEND_DEPT")]
        [MDisplayName("督办发起单位")]
        [VRequired]
        [VStringLength(0, 200)]
        public string SuperviseSendDept { get; set; }

        /// <summary>
        /// 被督办单位
        /// </summary>        
        [JsonPropertyName("SUPERVISE_RSV_DEPT")]
        [MDisplayName("被督办单位")]
        [VRequired]
        [VStringLength(0, 200)]
        public string SuperviseRsvDept { get; set; }

        /// <summary>
        /// 督办类型
        /// </summary>        
        [JsonPropertyName("SUPERVISE_TYPE")]
        [MDisplayName("督办类型")]
        [VRequired]
        [VStringLength(0, 10)]
        public string SuperviseType { get; set; }

        /// <summary>
        /// 督办反馈截止时间
        /// </summary>        
        [JsonPropertyName("SUPERVISE_RETURN_DATE")]
        [MDisplayName("督办反馈截止时间")]
        [VRequired]
        public string? SuperviseReturnDate { get; set; }

        /// <summary>
        /// 行政区划代码
        /// </summary>        
        [JsonPropertyName("AREA_CODE")]
        [MDisplayName("行政区划代码")]
        [VRequired]
        [VStringLength(0, 24)]
        public string AreaCode { get; set; }

        /// <summary>
        /// 材料标识
        /// </summary>        
        [JsonPropertyName("CLIENG_GUID")]
        [MDisplayName("材料标识")]
        [VRequired]
        [VStringLength(0, 50)]
        public string CliengGuid { get; set; }
    }
}
