MdpEntity.cs 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. namespace Admin.NET.Plugin.AiDOP.Entity.DataPlatform;
  2. [SugarTable("mdp_entity", "MDP同步实体配置")]
  3. public class MdpEntity
  4. {
  5. [SugarColumn(ColumnName = "id", IsPrimaryKey = true, IsIdentity = true)]
  6. public long Id { get; set; }
  7. [SugarColumn(ColumnName = "tenant_id")]
  8. public long TenantId { get; set; }
  9. [SugarColumn(ColumnName = "source_id")]
  10. public long SourceId { get; set; }
  11. [SugarColumn(ColumnName = "entity_code", Length = 100)]
  12. public string EntityCode { get; set; } = string.Empty;
  13. [SugarColumn(ColumnName = "entity_name", Length = 200)]
  14. public string EntityName { get; set; } = string.Empty;
  15. [SugarColumn(ColumnName = "entity_type", Length = 40)]
  16. public string EntityType { get; set; } = "TABLE";
  17. [SugarColumn(ColumnName = "source_table_name", Length = 200, IsNullable = true)]
  18. public string? SourceTableName { get; set; }
  19. [SugarColumn(ColumnName = "source_api_path", Length = 500, IsNullable = true)]
  20. public string? SourceApiPath { get; set; }
  21. [SugarColumn(ColumnName = "api_config_id", IsNullable = true)]
  22. public long? ApiConfigId { get; set; }
  23. [SugarColumn(ColumnName = "target_table_name", Length = 200, IsNullable = true)]
  24. public string? TargetTableName { get; set; }
  25. [SugarColumn(ColumnName = "sync_mode", Length = 40)]
  26. public string SyncMode { get; set; } = "INCR";
  27. [SugarColumn(ColumnName = "incr_column", Length = 100, IsNullable = true)]
  28. public string? IncrColumn { get; set; }
  29. [SugarColumn(ColumnName = "batch_size")]
  30. public int BatchSize { get; set; } = 5000;
  31. [SugarColumn(ColumnName = "response_data_path", Length = 200, IsNullable = true)]
  32. public string? ResponseDataPath { get; set; }
  33. [SugarColumn(ColumnName = "dedup_key_path", Length = 200, IsNullable = true)]
  34. public string? DedupKeyPath { get; set; }
  35. /// <summary>业务键规格:逗号分隔有序源字段名,如 Domain,Receiver,Line。</summary>
  36. [SugarColumn(ColumnName = "biz_key_expr", Length = 300, IsNullable = true)]
  37. public string? BizKeyExpr { get; set; }
  38. [SugarColumn(ColumnName = "last_cursor", Length = 500, IsNullable = true)]
  39. public string? LastCursor { get; set; }
  40. [SugarColumn(ColumnName = "last_sync_to", IsNullable = true)]
  41. public DateTime? LastSyncTo { get; set; }
  42. [SugarColumn(ColumnName = "job_id", Length = 100, IsNullable = true)]
  43. public string? JobId { get; set; }
  44. [SugarColumn(ColumnName = "status")]
  45. public int Status { get; set; } = 1;
  46. [SugarColumn(ColumnName = "remark", Length = 500, IsNullable = true)]
  47. public string? Remark { get; set; }
  48. [SugarColumn(ColumnName = "create_time")]
  49. public DateTime CreateTime { get; set; }
  50. [SugarColumn(ColumnName = "update_time")]
  51. public DateTime UpdateTime { get; set; }
  52. }
  53. [SugarTable("mdp_field_mapping", "MDP字段映射配置")]
  54. public class MdpFieldMapping
  55. {
  56. [SugarColumn(ColumnName = "id", IsPrimaryKey = true, IsIdentity = true)]
  57. public long Id { get; set; }
  58. [SugarColumn(ColumnName = "entity_id")]
  59. public long EntityId { get; set; }
  60. [SugarColumn(ColumnName = "source_field", Length = 200)]
  61. public string SourceField { get; set; } = string.Empty;
  62. [SugarColumn(ColumnName = "target_field", Length = 200)]
  63. public string TargetField { get; set; } = string.Empty;
  64. [SugarColumn(ColumnName = "field_type", Length = 40)]
  65. public string FieldType { get; set; } = "DIRECT";
  66. [SugarColumn(ColumnName = "transform_script", ColumnDataType = "text", IsNullable = true)]
  67. public string? TransformScript { get; set; }
  68. [SugarColumn(ColumnName = "const_value", Length = 500, IsNullable = true)]
  69. public string? ConstValue { get; set; }
  70. [SugarColumn(ColumnName = "lookup_table", Length = 200, IsNullable = true)]
  71. public string? LookupTable { get; set; }
  72. [SugarColumn(ColumnName = "is_required")]
  73. public int IsRequired { get; set; }
  74. [SugarColumn(ColumnName = "default_value", Length = 500, IsNullable = true)]
  75. public string? DefaultValue { get; set; }
  76. [SugarColumn(ColumnName = "sort_order")]
  77. public int SortOrder { get; set; }
  78. [SugarColumn(ColumnName = "create_time")]
  79. public DateTime CreateTime { get; set; }
  80. }