using System.Text.Json.Serialization;

namespace DataSharing.Share.Dtos.Province.XieTong.Receive
{
    /// <summary>
    /// 服务工单撤单
    /// </summary>
    public class RevokeCaseInfoRequest
    {
        /// <summary>
        /// 
        /// </summary>
        public ClientInfo token { get; set; }

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

    /// <summary>
    /// 服务工单撤单
    /// </summary>
    public class RevokeCaseInfoModel
    {
        /// <summary>
        /// 撤单时间
        /// </summary>
        [JsonPropertyName("REVOKE_TIME")]
        [MDisplayName("撤单时间")]
        [VRequired]
        public string? RevokeTime { get; set; }

        /// <summary>
        /// 撤单类型
        /// </summary>
        [JsonPropertyName("REVOKE_TYPE")]
        [MDisplayName("撤单类型")]
        [VRequired]
        [VStringLength(0, 24)]
        public string RevokeType { get; set; }

        /// <summary>
        /// 操作人员
        /// </summary>
        [JsonPropertyName("REVOKE_NAME")]
        [MDisplayName("操作人员")]
        [VRequired]
        [VStringLength(0, 200)]
        public string RevokeName { get; set; }

        /// <summary>
        /// 撤单理由
        /// </summary>
        [JsonPropertyName("REVOKE_REASION")]
        [MDisplayName("撤单理由")]
        [VRequired]
        public string RevokeReasion { get; set; }

        /// <summary>
        /// 服务工单编号
        /// </summary>
        [JsonPropertyName("CASE_SERIAL")]
        [VRequired]
        [VStringLength(0, 50)]
        [MDisplayName("服务工单编号")]
        public string CaseSerial { 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; }
    }
}
