| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- namespace Admin.NET.Plugin.AiDOP.Entity.S8;
- /// <summary>
- /// R6 规则检测日志:每次规则检测的审计落库(CREATED / REFRESHED / RECOVERED / NO_HIT / EVALUATE_FAILED)。
- /// 不做唯一索引、不做外键,写入失败必须不阻断主检测链。
- /// </summary>
- [SugarTable("ado_s8_detection_log", "S8 规则检测日志")]
- [SugarIndex("idx_s8_detection_log_rule_time", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(RuleCode), OrderByType.Asc, nameof(DetectedAt), OrderByType.Desc)]
- [SugarIndex("idx_s8_detection_log_dedup_time", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(DedupKey), OrderByType.Asc, nameof(DetectedAt), OrderByType.Desc)]
- [SugarIndex("idx_s8_detection_log_result_time", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(DetectResult), OrderByType.Asc, nameof(DetectedAt), OrderByType.Desc)]
- [SugarIndex("idx_s8_detection_log_exception", nameof(ExceptionId), OrderByType.Asc)]
- public class AdoS8DetectionLog
- {
- [SugarColumn(ColumnName = "id", IsPrimaryKey = true, IsIdentity = true, ColumnDataType = "bigint")]
- public long Id { get; set; }
- [SugarColumn(ColumnName = "tenant_id", ColumnDataType = "bigint")]
- public long TenantId { get; set; }
- [SugarColumn(ColumnName = "factory_id", ColumnDataType = "bigint")]
- public long FactoryId { get; set; }
- [SugarColumn(ColumnName = "created_at")]
- public DateTime CreatedAt { get; set; } = DateTime.Now;
- [SugarColumn(ColumnName = "updated_at", IsNullable = true)]
- public DateTime? UpdatedAt { get; set; }
- [SugarColumn(ColumnName = "is_deleted", ColumnDataType = "boolean")]
- public bool IsDeleted { get; set; }
- [SugarColumn(ColumnName = "rule_id", ColumnDataType = "bigint", IsNullable = true)]
- public long? RuleId { get; set; }
- [SugarColumn(ColumnName = "rule_code", Length = 64, IsNullable = true)]
- public string? RuleCode { get; set; }
- [SugarColumn(ColumnName = "rule_type", Length = 32, IsNullable = true)]
- public string? RuleType { get; set; }
- [SugarColumn(ColumnName = "scene_code", Length = 64, IsNullable = true)]
- public string? SceneCode { get; set; }
- [SugarColumn(ColumnName = "source_object_type", Length = 64, IsNullable = true)]
- public string? SourceObjectType { get; set; }
- [SugarColumn(ColumnName = "source_object_id", Length = 128, IsNullable = true)]
- public string? SourceObjectId { get; set; }
- [SugarColumn(ColumnName = "related_object_code", Length = 128, IsNullable = true)]
- public string? RelatedObjectCode { get; set; }
- [SugarColumn(ColumnName = "dedup_key", Length = 256, IsNullable = true)]
- public string? DedupKey { get; set; }
- /// <summary>HIT / CREATED / DUPLICATE / REFRESHED / RECOVERED / NO_HIT / EVALUATE_FAILED / SKIPPED。</summary>
- [SugarColumn(ColumnName = "detect_result", Length = 32)]
- public string DetectResult { get; set; } = string.Empty;
- [SugarColumn(ColumnName = "exception_id", ColumnDataType = "bigint", IsNullable = true)]
- public long? ExceptionId { get; set; }
- [SugarColumn(ColumnName = "detected_at")]
- public DateTime DetectedAt { get; set; } = DateTime.Now;
- [SugarColumn(ColumnName = "payload_snapshot", ColumnDataType = "mediumtext", IsNullable = true)]
- public string? PayloadSnapshot { get; set; }
- [SugarColumn(ColumnName = "failure_reason", Length = 128, IsNullable = true)]
- public string? FailureReason { get; set; }
- [SugarColumn(ColumnName = "failure_message", Length = 1000, IsNullable = true)]
- public string? FailureMessage { get; set; }
- [SugarColumn(ColumnName = "run_id", Length = 64, IsNullable = true)]
- public string? RunId { get; set; }
- [SugarColumn(ColumnName = "trigger_source", Length = 32, IsNullable = true)]
- public string? TriggerSource { get; set; }
- [SugarColumn(ColumnName = "remark", Length = 500, IsNullable = true)]
- public string? Remark { get; set; }
- }
|