using Hotline.Share.Enums.Order;
using Hotline.Share.Requests;

namespace Hotline.Share.Dtos.Order.Publish;

public record QueryOrderPublishDto : PagedKeywordRequest
{
    /// <summary>
    /// 发布状态
    /// </summary>
    public EPubState? PubState { get; set; }

    /// <summary>
    /// 工单编号
    /// </summary>
    public string? No { get; set; }

    /// <summary>
    /// 工单标题
    /// </summary>
    public string? Title { get; set; }

    /// <summary>
    /// 受理时间(工单创建时间)
    /// </summary>
    public DateTime? CreationTimeStart { get; set; }
    public DateTime? CreationTimeEnd { get; set; }

    /// <summary>
    /// 省期满时间开始
    /// </summary>
    public DateTime? ExpiredTimeProvinceStart { get; set; }

    /// <summary>
    /// 省期满时间结束
    /// </summary>
    public DateTime? ExpiredTimeProvinceEnd { get; set; }

    /// <summary>
    /// 来电号码（×）
    /// </summary>
    public string? FromPhone { get; set; }

	/// <summary>
	/// 联系电话
	/// </summary>
	public string? Contact { get; set; }

	/// <summary>
	/// 接办名称（综合查询使用）
	/// </summary>
	public string? ActualHandleOrgName { get; set; }

    /// <summary>
    /// 受理类型
    /// </summary>
    public List<string>? AcceptTypes { get; set; } = new();


    /// <summary>
    /// 受理类型（√）
    /// </summary>
    public string? AcceptType { get; set; }

    /// <summary>
    /// 热点分类关键词
    /// </summary>
    public string? Hotspot { get; set; }

    /// <summary>
    /// 热点分类
    /// </summary>
    public List<string>? HotspotIds { get; set; } = new();

    /// <summary>
    /// 受理坐席名字或工号（×）
    /// </summary>
    public string? NameOrNo { get; set; }

    /// <summary>
    /// 派单人
    /// </summary>
    public string? CenterToOrgHandlerName { get; set; }

    /// <summary>
    /// 发布范围
    /// </summary>
    public EPublicState? PubRange { get; set; }

    /// <summary>
    /// 归档时间
    /// </summary>
    public DateTime? FiledTimeStart { get; set; }
    public DateTime? FiledTimeEnd { get; set; }

    /// <summary>
    /// 工单标签
    /// </summary>
    public string? OrderTag { get; set; }

    /// <summary>
    /// 归档方式
    /// </summary>
    public FiledType? FiledType { get; set; }

    /// <summary>
    /// 是否会签
    /// </summary>
    public bool? IsCountersign { get; set; }

    /// <summary>
    /// 是否解决
    /// </summary>
    public bool? Resolve { get; set; }

    /// <summary>
    /// 是否只查询自己的待发布工单
    /// </summary>
    public bool? QuerySelf { get; set; }

    /// <summary>
    /// 是否省工单（空为全部  true为省工单 false为市工单）
    /// </summary>
    public bool? IsProvinceOrder { get; set; }

    /// <summary>
    /// 来源渠道（√）
    /// </summary>
    public string? Channel { get; set; }

    /// <summary>
    /// 是否超期
    /// </summary>
    public bool? IsOverTime { get; set; }

    /// <summary>
    /// 查询批次
    /// </summary>
    public int QueryIndex { get; set; }

    /// <summary>
    /// 一级部门
    /// </summary>
    public string? OrgLevelOneName { get; set; }

    /// <summary>
    /// 来电主体（√）(单选)
    /// </summary>
    public EIdentityType? IdentityType { get; set; }

    /// <summary>
    /// 中国政府网
    /// </summary>
    public bool? Iszgzfw { get; set; }

    /// <summary>
    /// 国家平台转办件
    /// </summary>
    public bool? Isgjzwfwpt { get; set; }

    /// <summary>
    /// 省来源分类 1：政民互动直派 2：政民互动  3：省12345
    /// </summary>
    public string? ProvinceChannel { get; set; }
}