12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- using System.ComponentModel;
- using Hotline.Share.Dtos.File;
- using Hotline.Share.Enums.FlowEngine;
- using XF.Utility.EnumExtensions;
- namespace Hotline.Share.Dtos.FlowEngine.Workflow;
- public class WorkflowTraceDto : StepBasicDto
- {
- public string Id { get; set; }
-
- /// <summary>
- /// 节点Id
- /// </summary>
- public string StepId { get; set; }
- /// <summary>
- /// 流转记录状态
- /// </summary>
- public EWorkflowTraceType Type { get; set; }
-
- public string StatusText => Type.GetDescription();
- /// <summary>
- /// 过期时间(生成流转记录时取值当前workflow的过期时间)
- /// </summary>
- public DateTime ExpiredTime { get; set; }
- /// <summary>
- /// 会签从属关系
- /// </summary>
- public string? ParentId { get; set; }
- /// <summary>
- /// 会签流转记录
- /// </summary>
- public List<WorkflowTraceDto> Traces { get; set; }
- public List<FileDto>? Files { get; set; }
- public ExpiredStatus ExpiredStatus
- {
- get
- {
- if (HandleTime.HasValue)
- {
- return HandleTime.Value < StepExpiredTime ? ExpiredStatus.Completed : ExpiredStatus.Expired;
- }
- else
- {
- return DateTime.Now < StepExpiredTime ? ExpiredStatus.Handling : ExpiredStatus.Expired;
- }
- }
- }
- public string ExpiredStatusText => ExpiredStatus.GetDescription();
- }
- /// <summary>
- /// 超期状态
- /// </summary>
- public enum ExpiredStatus
- {
- //办理中-未超期、办理完成-未超期、超期
- [Description("办理中-未超期")]
- Handling = 0,
- [Description("办理完成-未超期")]
- Completed = 1,
- [Description("超期")]
- Expired = 2,
- }
|