using Hotline.Share.Requests;
using System.ComponentModel;

namespace Hotline.Share.Dtos.JudicialManagement
{
    public record QueryEventClassificationStatisticsDto : PagedRequest
    {
        public string Id { get; set; }
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }
        public string EventTypeId { get; set; }

        public string AreaCode { get; set; }
    }

    public record QueryDepartmentalProcessingStatisticsDto : PagedRequest
    {
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }

        /// <summary>
        /// 部门code
        /// </summary>
        public string OrgCode { get; set; }

        /// <summary>
        /// 线索属实
        /// </summary>
        public bool TheClueIsTrue { get; set; }

        /// <summary>
        /// 线索不属实
        /// </summary>
        public bool TheClueIsNotTrue { get; set; }

        /// <summary>
        /// 行政执法工单
        /// </summary>
        public bool EnforcementOrder { get; set; }
    }

    /// <summary>
    /// 
    /// </summary>
    public record QueryRegionalClassificationStatisticsDto : PagedRequest
    {
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }

        /// <summary>
        /// 区域code
        /// </summary>
        public string AreaCode { get; set; }

        /// <summary>
        /// 线索属实
        /// </summary>
        public bool TheClueIsTrue { get; set; }

        /// <summary>
        /// 线索不属实
        /// </summary>
        public bool TheClueIsNotTrue { get; set; }

        /// <summary>
        /// 行政执法工单
        /// </summary>
        public bool EnforcementOrder { get; set; }
    }

    public record QueryIndustryOrderStatisticsRequest
    {
        /// <summary>
        /// 开始时间
        /// </summary>
        [Description("开始时间")]
        public DateTime StartTime { get; set; }

        /// <summary>
        /// 结束时间
        /// </summary>
        [Description("结束时间")]
        public DateTime EndTime { get; set; }
    }

    public record QueryIndustryOrderStatisticsRateRequest : QueryIndustryOrderStatisticsRequest
    {
        /// <summary>
        /// 区域编码
        /// </summary>
        [Description("区域编码")]
        public string AreaCode { get; set; }
    }

    public record QueryEventTypeOrderStaticsRequest : QueryIndustryOrderStatisticsRateRequest
    {

    }

    /// <summary>
    /// 
    /// </summary>
    public record QueryOrgSatisfactionStatisticsDto : PagedRequest
    {
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }

        /// <summary>
        /// 部门code
        /// </summary>
        public string OrgCode { get; set; }

        /// <summary>
        /// 1:办件结果 2:办件态度
        /// </summary>
        public int TypeId { get; set; }

        /// <summary>
        /// 满意度值
        /// </summary>
        public string DateValue { get; set; }
    }
}
