using Hotline.Share.Dtos.File; using Hotline.Share.Dtos.FlowEngine.Workflow; using Hotline.Share.Enums.FlowEngine; using Hotline.Share.Enums.Order; using XF.Utility.EnumExtensions; namespace Hotline.Share.Dtos.Order.Detail; public class OrderFlowTraceDto { public string Id { get; set; } public DateTime CreationTime { get; set; } /// /// 节点名称 /// public string Name { get; set; } /// /// 交班人名称 /// public string? AssignerName { get; set; } /// /// 交班人部门 /// public string AssignOrgName { get; set; } /// /// 受理人 /// public string? AcceptorName { get; set; } public string? AcceptorOrgName { get; set; } /// /// 受理时间 /// public DateTime? AcceptTime { get; set; } /// /// 办理人 /// public string? HandlerName { get; set; } /// /// 办理人部门 /// public string? HandlerOrgName { get; set; } /// /// 办理时间 /// public DateTime? HandleTime { get; set; } /// /// 节点期满时间 /// public DateTime? StepExpiredTime { get; set; } /// /// 超期状态 /// public EExpiredStatus? ExpiredStatus { get; set; } public string? ExpiredStatusText => ExpiredStatus.HasValue ? ExpiredStatus.GetDescription() : ""; /// /// 办理方式 /// public EHandleMode? HandleMode { get; set; } public string HandleModeText => HandleMode.HasValue ? HandleMode.GetDescription() : ""; /// /// 节点类型 /// public ETraceStyle TraceStyle { get; set; } public EWorkflowStepStatus Status { get; set; } public string StatusText => Status.GetDescription(); /// /// 会签流转记录 /// public List Traces { get; set; } #region 流程节点展开 /// /// 办理意见 /// public string? Opinion { get; set; } /// /// 附件 /// public List? FileJson { get; set; } /// /// 备注 /// public string? Remark { get; set; } #endregion #region 发布节点展开 /// /// 发布范围 /// public bool? PublishState { get; set; } /// /// 整理结果 /// public string ArrangeOpinion { get; set; } #endregion #region 回访节点展开 /// /// 语音评价(话务评价) /// public EVoiceEvaluate? VoiceEvaluate { get; set; } public string? VoiceEvaluateText => VoiceEvaluate.HasValue ? VoiceEvaluate.GetDescription() : ""; /// /// 话务员评价(话务评价) /// public ESeatEvaluate? SeatEvaluate { get; set; } public string? SeatEvaluateText => SeatEvaluate.HasValue ? SeatEvaluate.GetDescription() : ""; /// /// 回访内容 /// public string? VisitContent { get; set; } public IReadOnlyList OrderFlowVisitDetails { get; set; } #endregion } /// /// 工单办理流程明细回访明细项 /// public class OrderFlowVisitDetail { /// /// 回访部门名称 /// public string VisitOrgName { get; set; } /// /// 部门办件结果 /// public string? OrgProcessingResults { get; set; } /// /// 不满意原因 /// public List? OrgNoSatisfiedReason { get; set; } /// /// 部门办件态度 /// public string? OrgHandledAttitude { get; set; } /// /// 回访内容 /// public string? VisitContent { get; set; } }