ApprovalFlowCompletedNode.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. namespace Admin.NET.Plugin.ApprovalFlow;
  2. /// <summary>
  3. /// 流程实例已完成节点表(P1-5 并行网关支持,同时也为 P3-15 节点级统计提供数据源)
  4. /// 记录某个流程实例中每个节点的完成状态,含 userTask / exclusiveGateway / parallelGateway 等所有节点类型。
  5. /// </summary>
  6. [SugarTable(null, "流程实例已完成节点表")]
  7. [SugarIndex("uq_flowcompleted_inst_node", nameof(InstanceId), OrderByType.Asc, nameof(NodeId), OrderByType.Asc, true)]
  8. public class ApprovalFlowCompletedNode : EntityBase
  9. {
  10. /// <summary>
  11. /// 流程实例 Id
  12. /// </summary>
  13. [SugarColumn(ColumnDescription = "流程实例Id")]
  14. public long InstanceId { get; set; }
  15. /// <summary>
  16. /// 节点 Id(FlowJson 中的 node.id)
  17. /// </summary>
  18. [SugarColumn(ColumnDescription = "节点Id", Length = 64)]
  19. [MaxLength(64)]
  20. public string NodeId { get; set; } = "";
  21. /// <summary>
  22. /// 节点名称(冗余,便于展示与统计)
  23. /// </summary>
  24. [SugarColumn(ColumnDescription = "节点名称", Length = 128, IsNullable = true)]
  25. [MaxLength(128)]
  26. public string? NodeName { get; set; }
  27. /// <summary>
  28. /// 节点类型(如 bpmn:userTask / bpmn:exclusiveGateway / bpmn:parallelGateway)
  29. /// </summary>
  30. [SugarColumn(ColumnDescription = "节点类型", Length = 64, IsNullable = true)]
  31. [MaxLength(64)]
  32. public string? NodeType { get; set; }
  33. /// <summary>
  34. /// 完成时间
  35. /// </summary>
  36. [SugarColumn(ColumnDescription = "完成时间")]
  37. public DateTime CompletedTime { get; set; } = DateTime.Now;
  38. }