namespace OrpaonVision.Model.Production; /// /// 运行状态转换日志模型。 /// public sealed class RunStateTransitionLogModel { /// /// 日志ID。 /// public Guid LogId { get; set; } /// /// 产品会话ID。 /// public Guid SessionId { get; set; } /// /// 层级会话ID(可选)。 /// public Guid? LayerSessionId { get; set; } /// /// 转换前状态。 /// public string FromState { get; set; } = string.Empty; /// /// 转换后状态。 /// public string ToState { get; set; } = string.Empty; /// /// 触发事件。 /// public string TriggerEvent { get; set; } = string.Empty; /// /// 转换原因。 /// public string Reason { get; set; } = string.Empty; /// /// 转换类型。 /// public RunStateTransitionType TransitionType { get; set; } /// /// 操作者ID。 /// public string? OperatorId { get; set; } /// /// 操作者姓名。 /// public string? OperatorName { get; set; } /// /// 是否人工干预。 /// public bool IsManualIntervention { get; set; } /// /// 关联数据(JSON格式)。 /// public string? ContextJson { get; set; } /// /// 截图路径(可选)。 /// public string? ScreenshotPath { get; set; } /// /// 转换时间(UTC)。 /// public DateTime TransitionAtUtc { get; set; } /// /// 处理耗时(毫秒)。 /// public long ProcessingTimeMs { get; set; } /// /// 错误信息(如果有)。 /// public string? ErrorMessage { get; set; } /// /// 创建时间(UTC)。 /// public DateTime CreatedAtUtc { get; set; } /// /// 创建人。 /// public string CreatedBy { get; set; } = string.Empty; } /// /// 运行状态转换类型。 /// public enum RunStateTransitionType { /// /// 自动转换。 /// Automatic = 0, /// /// 人工干预。 /// Manual = 1, /// /// 系统触发。 /// System = 2, /// /// 错误恢复。 /// ErrorRecovery = 3, /// /// 超时处理。 /// Timeout = 4, /// /// 异常终止。 /// Exception = 5 }