using System.Text.Json.Serialization; namespace BizProcessDAL.DTO { // Phase 7 -- "where is this document right now". Node ids match ProcessMapDTO's own // (stage.BizProcessStageId.ToString()) so the FE can drive a styles[] overlay on the existing // diagram with no extra id translation. public class ProcessInstanceTraceDTO { [JsonPropertyName("visitedStageIds")] public List VisitedStageIds { get; set; } = new(); [JsonPropertyName("currentStageIds")] public List CurrentStageIds { get; set; } = new(); [JsonPropertyName("futureStageIds")] public List FutureStageIds { get; set; } = new(); // Same workflow lookup Phase 6 uses, applied to the current stage only. [JsonPropertyName("hasWorkflow")] public bool HasWorkflow { get; set; } [JsonPropertyName("workflowId")] public int? WorkflowId { get; set; } // Entity Viewer drill-through -- the pivot document's own real MENTITY.ENTITYID + // primary key (its TALLOCATION row's ObjectHeaderTypeId/ObjectHeaderId, e.g. MMHEAD), // for a "view this document" action on the traced instance. Null when the pivot's // trace row didn't resolve one (e.g. a legacy row predating the TALLOCATION migration). [JsonPropertyName("currentEntityTypeId")] public int? CurrentEntityTypeId { get; set; } [JsonPropertyName("currentObjectId")] public int? CurrentObjectId { get; set; } } }