S8CanonicalColumns.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. namespace Admin.NET.Plugin.AiDOP.Service.S8.Rules.DataAccess;
  2. /// <summary>
  3. /// S8 canonical 行契约列名。
  4. ///
  5. /// 这些名字此前散落在三个 evaluator 的 private const 里(S8-WATCH-EXPRESSION-COLUMN-CONTRACT-FIX-1
  6. /// 引入),本类只是把同一批既有字面量集中声明,**不改变任何取值语义**:
  7. /// evaluator 仍是"canonical 优先,缺失回退 params_json 指定的真实列名"。
  8. ///
  9. /// STANDARD_DATASET 模式下 Provider 必须直接以这些列名产出行,从而天然命中 canonical 分支。
  10. /// </summary>
  11. public static class S8CanonicalColumns
  12. {
  13. /// <summary>业务对象唯一标识。参与 DedupKey,格式变化会导致历史异常与新异常断代。</summary>
  14. public const string SourceObjectId = "source_object_id";
  15. /// <summary>业务对象展示编码。</summary>
  16. public const string RelatedObjectCode = "related_object_code";
  17. /// <summary>业务对象展示名称。</summary>
  18. public const string RelatedObjectName = "related_object_name";
  19. /// <summary>到期时间。TIMEOUT 判定字段。</summary>
  20. public const string DueAt = "due_at";
  21. /// <summary>状态。TIMEOUT 判定字段(与 completedStates 比对)。</summary>
  22. public const string Status = "status";
  23. /// <summary>被监测数值。OUT_OF_RANGE 判定字段。</summary>
  24. public const string MeasuredValue = "measured_value";
  25. /// <summary>目标数量。SHORTAGE 判定字段。</summary>
  26. public const string TargetQty = "target_qty";
  27. /// <summary>实际数量。SHORTAGE 判定字段。</summary>
  28. public const string ActualQty = "actual_qty";
  29. /// <summary>发生部门(可选,行内携带)。</summary>
  30. public const string OccurrenceDeptId = "occurrence_dept_id";
  31. /// <summary>责任部门(可选,行内携带)。</summary>
  32. public const string ResponsibleDeptId = "responsible_dept_id";
  33. }