using Hotline.Orders;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XF.Domain.Repository;

namespace Hotline.Statistics
{
	/// <summary>
	/// 部门办件统计
	/// </summary>
	[Description("部门办件统计")]
	[SugarIndex("index_statisticsDepart_insertTime", nameof(StatisticsDepart.InsertTime), OrderByType.Desc)]
	[SugarIndex("index_statisticsDepart_time", nameof(StatisticsDepart.Time), OrderByType.Desc)]
	public class StatisticsDepart : CreationEntity
	{

		/// <summary>
		/// 部门标识
		/// </summary>
		[SugarColumn(ColumnDescription = "部门标识")]
		public int DepartmentId { get; set; }

		/// <summary>
		/// 父级标识
		/// </summary>
		[SugarColumn(ColumnDescription = "父级标识")]
		public int DepartmentPId { get; set; }

		/// <summary>
		/// 部门名称
		/// </summary>
		[SugarColumn(ColumnDescription = "部门名称")]
		public string Name { get; set; }

		/// <summary>
		/// 部门类别
		/// </summary>
		[SugarColumn(ColumnDescription = "部门类别")]
		public string Type { get; set; }

		/// <summary>
		/// 信件总量
		/// </summary>
		[SugarColumn(ColumnDescription = "信件总量")]
		public int OrderAllNum { get; set; }

		/// <summary>
		/// 办件信息（已办件数）
		/// </summary>
		[SugarColumn(ColumnDescription = "办件信息（已办件数）")]
		public int OrderAlreadyNum { get; set; }

		/// <summary>
		/// 办件信息（在办件数）
		/// </summary>
		[SugarColumn(ColumnDescription = "办件信息（在办件数）")]
		public int OrderWaitNum { get; set; }

		/// <summary>
		/// 办件信息（办结率）
		/// </summary>
		[SugarColumn(Length = 10, DecimalDigits = 6, ColumnDescription = "办件信息（办结率）")]
		public decimal OrderAlreadyRate { get; set; }

		/// <summary>
		/// 办件信息（按时办结率）
		/// </summary>
		[SugarColumn(Length = 10, DecimalDigits = 6, ColumnDescription = "办件信息（按时办结率）")]
		public decimal OrderEndRate { get; set; }

		/// <summary>
		/// 延期次数（延期次数）
		/// </summary>
		[SugarColumn(ColumnDescription = "延期次数（延期次数）")]
		public int DelayNum { get; set; }

		/// <summary>
		/// 延期次数（会签延期次数）
		/// </summary>
		[SugarColumn(ColumnDescription = "延期次数（会签延期次数）")]
		public int DelayCoopNum { get; set; }

		/// <summary>
		/// 延期次数（延期率）
		/// </summary>
		[SugarColumn(Length = 10, DecimalDigits = 6, ColumnDescription = " 延期次数（延期率）")]
		public decimal DelayRate { get; set; }

		/// <summary>
		/// 超期信息（已办超期）
		/// </summary>
		[SugarColumn(ColumnDescription = "超期信息（已办超期）")]
		public int OverdueAlreadyNum { get; set; }

		/// <summary>
		/// 超期信息（待办超期）
		/// </summary>
		[SugarColumn(ColumnDescription = "超期信息（待办超期）")]
		public int OverdueWaitNum { get; set; }

		/// <summary>
		/// 超期信息（会签已办超期）
		/// </summary>
		[SugarColumn(ColumnDescription = "超期信息（会签已办超期）")]
		public int OverdueCoopAlreadyNum { get; set; }

		/// <summary>
		/// 超期信息（会签待办超期）
		/// </summary>
		[SugarColumn(ColumnDescription = "超期信息（会签待办超期）")]
		public int OverdueCoopWaitNum { get; set; }

		/// <summary>
		/// 超期信息（超期件数）
		/// </summary>
		[SugarColumn(ColumnDescription = "超期信息（超期件数）")]
		public int OverdueNum { get; set; }

		/// <summary>
		/// 超期信息（超期率）
		/// </summary>
		[SugarColumn(Length = 10, DecimalDigits = 6, ColumnDescription = "超期信息（超期率）")]
		public decimal OverdueRate { get; set; }

		/// <summary>
		/// 会签信息（会签待办）
		/// </summary>
		[SugarColumn(ColumnDescription = "会签信息（会签待办）")]
		public int CoopWaitNum { get; set; }

		/// <summary>
		/// 会签信息（会签已办）
		/// </summary>
		[SugarColumn(ColumnDescription = "会签信息（会签已办）")]
		public int CoopAlreadyNum { get; set; }

		/// <summary>
		/// 归档信息（待归档）
		/// </summary>
		[SugarColumn(ColumnDescription = "归档信息（待归档）")]
		public int FileWaitNum { get; set; }

		/// <summary>
		/// 归档信息（已归档）
		/// </summary>
		[SugarColumn(ColumnDescription = "归档信息（已归档）")]
		public int FileAlreadyNum { get; set; }

		/// <summary>
		/// 发布信息（待发布）
		/// </summary>
		[SugarColumn(ColumnDescription = "发布信息（待发布）")]
		public int PublishWaitNum { get; set; }

		/// <summary>
		/// 发布信息（公开件）
		/// </summary>
		[SugarColumn(ColumnDescription = "发布信息（公开件）")]
		public int PublishPublicNum { get; set; }

		/// <summary>
		/// 发布信息（不公开件）
		/// </summary>
		[SugarColumn(ColumnDescription = "发布信息（不公开件）")]
		public int PublishNotNum { get; set; }

		/// <summary>
		///  甄别件（申请总量）
		/// </summary>
		[SugarColumn(ColumnDescription = "甄别件（申请总量）")]
		public int ScreenApplyNum { get; set; }

		/// <summary>
		/// 甄别件（待甄别）
		/// </summary>
		[SugarColumn(ColumnDescription = "甄别件（待甄别）")]
		public int ScreenWaitNum { get; set; }

		/// <summary>
		/// 甄别件（已同意）
		/// </summary>
		[SugarColumn(ColumnDescription = " 甄别件（已同意）")]
		public int ScreenYesNum { get; set; }

		/// <summary>
		/// 甄别件（未同意）
		/// </summary>
		[SugarColumn(ColumnDescription = "甄别件（未同意）")]
		public int ScreenNoNum { get; set; }

		/// <summary>
		/// 总满意率
		/// </summary>
		[SugarColumn(Length = 10, DecimalDigits = 6, ColumnDescription = "总满意率")]
		public decimal AllSatisfaction { get; set; }

		/// <summary>
		/// 统计日期
		/// </summary>
		[SugarColumn(ColumnDescription = "统计日期")]
		public DateTime Time { get; set; }

		/// <summary>
		/// 统计时限
		/// </summary>
		[SugarColumn(ColumnDescription = "统计时限")]
		public int Month { get; set; }

		/// <summary>
		/// 入库时间
		/// </summary>
		[SugarColumn(ColumnDescription = "入库时间")]
		public DateTime InsertTime { get; set; }

		/// <summary>
		/// 满意
		/// </summary>
		/// </summary>
		[SugarColumn(ColumnDescription = "满意")]
		public int? SatisfactionCount { get; set; }

		/// <summary>
		/// 不满意
		/// </summary>
		/// </summary>
		[SugarColumn(ColumnDescription = "不满意")]
		public int? NotSatisfactionCount { get; set; }

		/// <summary>
		/// 按时办结
		/// </summary>
		/// </summary>
		[SugarColumn(ColumnDescription = "按时办结")]
		public int? CompleteOnTime { get; set; }

	}
}
