using Hotline.Share.Enums.KnowledgeBase;
using Hotline.Share.Requests;

namespace Hotline.Share.Dtos.Knowledge;

public record KnowPagedListDto : PagedKeywordRequest
{
    /// <summary>
    /// 标题
    /// </summary>
    public string? Title { get; set; }

    /// <summary>
    /// 状态
    /// </summary>
    public EKnowledgeStatusRequest Status { get; set; }

    /// <summary>
    /// 草稿状态下的查询条件
    /// </summary>
    public EKnowledgeDraftTypeRequest NewDraftsStatus { get; set; }

    /// <summary>
    /// 是否公开
    /// </summary>
    public bool? IsPublic { get; set; }

    /// <summary>
    /// 摘要
    /// </summary>
    public string? Summary { get; set; }

    /// <summary>
    /// 部门
    /// </summary>
    public string? CreateOrgId { get; set; }

    /// <summary>
    /// 热点
    /// </summary>
    public string? HotspotId { get; set; }

    /// <summary>
    /// 分类
    /// </summary>
    public string? KnowledgeTypeId { get; set; }

    /// <summary>
    /// 审批类型
    /// </summary>
    public string? ModuleCode { get; set; }

    /// <summary>
    ///   归属
    /// </summary>
    public string? Attribution { get; set; }

    /// <summary>
    /// 创建开始
    /// </summary>
    public DateTime? CreationStartTime { get; set; }

    /// <summary>
    /// 创建结束
    /// </summary>
    public DateTime? CreationEndTime { get; set; }

    /// <summary>
    /// 上架开始
    /// </summary>
    public DateTime? StartOnShelfTime { get; set; }

    /// <summary>
    /// 上架结束
    /// </summary>
    public DateTime? EndOnShelfTime { get; set; }

    /// <summary>
    /// 下架开始
    /// </summary>
    public DateTime? StartOffShelfTime { get; set; }

    /// <summary>
    /// 下架结束
    /// </summary>
    public DateTime? EndOffShelfTime { get; set; }

    /// <summary>
    /// 更新时间开始
    /// </summary>
    public DateTime? StartUpdateTime { get; set; }

    /// <summary>
    /// 更新时间结束
    /// </summary>
    public DateTime? EndUpdateTime { get; set; }

    /// <summary>
    /// 创建人
    /// </summary>
    public string? CreatorName { get; set; }

}