|
@@ -2305,3 +2305,195 @@ public class SnapshotDepartmentStatisticsInDto
|
|
|
[Required]
|
|
|
public DateTime EndTime { get; set; }
|
|
|
}
|
|
|
+
|
|
|
+public class SnapshotDepartmentAveTimeStatisticsOutDto
|
|
|
+{
|
|
|
+ public string OrgCode { get; set; }
|
|
|
+ public object OrgName { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 工单数
|
|
|
+ /// </summary>
|
|
|
+ public int OrderCountNum { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 总秒数
|
|
|
+ /// </summary>
|
|
|
+ public double? TotalSeconds { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 总分钟数
|
|
|
+ /// </summary>
|
|
|
+ public string TotalMinutes => TotalSeconds == null ? "0" : ((double)TotalSeconds / 60).ToString("f0");
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 平均分钟数
|
|
|
+ /// </summary>
|
|
|
+ public string AvgMinutes => OrderCountNum == 0 ? "0" : (double.Parse(TotalMinutes) / OrderCountNum).ToString("f2");
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 平均小时数
|
|
|
+ /// </summary>
|
|
|
+ public string AvgHours => OrderCountNum == 0 ? "0": (double.Parse(TotalMinutes) / 60 / OrderCountNum).ToString("f2");
|
|
|
+}
|
|
|
+
|
|
|
+public class SnapshotDepartmentAveTimeStatisticsInDto
|
|
|
+{
|
|
|
+ [Required]
|
|
|
+ public DateTime StartTime { get; set; }
|
|
|
+ [Required]
|
|
|
+ public DateTime EndTime { get; set; }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+public record SnapshotDepartmentAveTimeStatisticsDetailsInDto : PagedRequest
|
|
|
+{
|
|
|
+ [Required]
|
|
|
+ public DateTime StartTime { get; set; }
|
|
|
+ [Required]
|
|
|
+ public DateTime EndTime { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 部门编号
|
|
|
+ /// </summary>
|
|
|
+ [Required]
|
|
|
+ public string OrgCode { get; set; }
|
|
|
+}
|
|
|
+
|
|
|
+public class SnapshotDepartmentAveTimeStatisticsDetailsOutDto
|
|
|
+{
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// Id
|
|
|
+ /// </summary>
|
|
|
+ public string Id { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 过期状态
|
|
|
+ /// </summary>
|
|
|
+ public EExpiredStatus? ExpiredStatus => FiledTime.CalculateExpiredState(Status, this.ExpiredTime, this.NearlyExpiredTime, this.NearlyExpiredTimeOne);
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 过期状态
|
|
|
+ /// </summary>
|
|
|
+ public string ExpiredStatusText => ExpiredStatus.GetDescription();
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 受理编号
|
|
|
+ /// </summary>
|
|
|
+ public string No { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 信件状态
|
|
|
+ /// </summary>
|
|
|
+ public EOrderStatus Status { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 信件状态
|
|
|
+ /// </summary>
|
|
|
+ public string StatusTxt => Status.GetDescription();
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 来源
|
|
|
+ /// </summary>
|
|
|
+ public string SourceChannel { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 当前节点
|
|
|
+ /// </summary>
|
|
|
+ public string CurrentStepName { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 重办次数
|
|
|
+ /// </summary>
|
|
|
+ public int ReTransactNum { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 是否紧急
|
|
|
+ /// </summary>
|
|
|
+ public bool IsUrgent { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 是否紧急
|
|
|
+ /// </summary>
|
|
|
+ public string IsUrgentText => IsUrgent ? "紧急" : "-";
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 期满时间
|
|
|
+ /// </summary>
|
|
|
+ public DateTime? ExpiredTime { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 即将超期时间
|
|
|
+ /// </summary>
|
|
|
+ public DateTime? NearlyExpiredTime { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 即将超期时间第一级
|
|
|
+ /// </summary>
|
|
|
+ public DateTime? NearlyExpiredTimeOne { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 是否超期
|
|
|
+ /// </summary>
|
|
|
+ public bool IsExpired
|
|
|
+ {
|
|
|
+ get
|
|
|
+ {
|
|
|
+ if (ExpiredTime.HasValue)
|
|
|
+ return DateTime.Now > ExpiredTime.Value;
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 受理时间
|
|
|
+ /// </summary>
|
|
|
+ public DateTime CreationTime { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 标题
|
|
|
+ /// </summary>
|
|
|
+ public string Title { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 办理时长(秒)
|
|
|
+ /// </summary>
|
|
|
+ public int? AllDuration { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 办理时长(分)
|
|
|
+ /// </summary>
|
|
|
+ public string TotalMinutes => AllDuration == null ? "0" : ((double)AllDuration / 60).ToString("f0");
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 办理时长(时)
|
|
|
+ /// </summary>
|
|
|
+ public string TotalHours => AllDuration == null ? "0" : ((double)AllDuration / 60 / 60).ToString("f2");
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 接办部门
|
|
|
+ /// </summary>
|
|
|
+ public string ActualHandleOrgName { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 接办时间
|
|
|
+ /// </summary>
|
|
|
+ public DateTime? ActualHandleTime { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 办结时间
|
|
|
+ /// </summary>
|
|
|
+ public DateTime? FiledTime { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 受理类型
|
|
|
+ /// </summary>
|
|
|
+ public string AcceptType { get; set; }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 热点类型
|
|
|
+ /// </summary>
|
|
|
+ public string HotspotName { get; set; }
|
|
|
+
|
|
|
+}
|