AdoS8MonitorObject.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. namespace Admin.NET.Plugin.AiDOP.Entity.S8;
  2. /// <summary>
  3. /// S8 监控对象字典(订单交付/订单变更/供应商交付/IQC 检验/生产工单/库存等)。
  4. /// 全局基线 + 工厂覆盖:tenant_id=0/factory_id=0 表示 baseline,可按 (tenant_id,factory_id) 覆盖。
  5. /// CONFIG-MONITOR-DICT-READONLY-SEED-1:本轮只读字典,前端 wizard 替代 BUSINESS_MONITOR_OPTIONS。
  6. /// </summary>
  7. [SugarTable("ado_s8_monitor_object", "S8 监控对象字典")]
  8. [SugarIndex("uk_s8_monitor_object_tenant_factory_code", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(ObjectCode), OrderByType.Asc, IsUnique = true)]
  9. [SugarIndex("idx_s8_monitor_object_tfe", nameof(TenantId), OrderByType.Asc, nameof(FactoryId), OrderByType.Asc, nameof(Enabled), OrderByType.Asc)]
  10. public class AdoS8MonitorObject
  11. {
  12. [SugarColumn(ColumnName = "id", IsPrimaryKey = true, IsIdentity = true, ColumnDataType = "bigint")]
  13. public long Id { get; set; }
  14. [SugarColumn(ColumnName = "tenant_id", ColumnDataType = "bigint")]
  15. public long TenantId { get; set; }
  16. [SugarColumn(ColumnName = "factory_id", ColumnDataType = "bigint")]
  17. public long FactoryId { get; set; }
  18. /// <summary>对象编码(业务唯一),如 ORDER_DELIVERY / ORDER_CHANGE / PURCHASE_DELIVERY。</summary>
  19. [SugarColumn(ColumnName = "object_code", Length = 64)]
  20. public string ObjectCode { get; set; } = string.Empty;
  21. /// <summary>对象类型分组:ORDER / PURCHASE_ORDER / WORK_ORDER / IQC / INVENTORY 等。</summary>
  22. [SugarColumn(ColumnName = "object_type", Length = 64)]
  23. public string ObjectType { get; set; } = string.Empty;
  24. /// <summary>对象中文名(订单交付/订单变更/供应商交付/...)。</summary>
  25. [SugarColumn(ColumnName = "object_name", Length = 128)]
  26. public string ObjectName { get; set; } = string.Empty;
  27. /// <summary>规则执行时的物理源表名(demo_test_order 等);为空时表达式生成器走 WHERE 1=0 占位。</summary>
  28. [SugarColumn(ColumnName = "source_table", Length = 128, IsNullable = true)]
  29. public string? SourceTable { get; set; }
  30. [SugarColumn(ColumnName = "enabled", ColumnDataType = "boolean")]
  31. public bool Enabled { get; set; } = true;
  32. [SugarColumn(ColumnName = "sort_no")]
  33. public int SortNo { get; set; }
  34. [SugarColumn(ColumnName = "remark", Length = 512, IsNullable = true)]
  35. public string? Remark { get; set; }
  36. [SugarColumn(ColumnName = "created_at")]
  37. public DateTime CreatedAt { get; set; } = DateTime.Now;
  38. [SugarColumn(ColumnName = "updated_at", IsNullable = true)]
  39. public DateTime? UpdatedAt { get; set; }
  40. }