diff --git a/src/modules/monitoring/Domain/Entities/AlertRule.cs b/src/modules/monitoring/Domain/Entities/AlertRule/AlertRuleEntity.cs
similarity index 90%
rename from src/modules/monitoring/Domain/Entities/AlertRule.cs
rename to src/modules/monitoring/Domain/Entities/AlertRule/AlertRuleEntity.cs
index 79d8096..0874910 100644
--- a/src/modules/monitoring/Domain/Entities/AlertRule.cs
+++ b/src/modules/monitoring/Domain/Entities/AlertRule/AlertRuleEntity.cs
@@ -1,14 +1,14 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json;
-using Monitoring.Domain.Enums;
+using Monitoring.Domain.Values;
-namespace Monitoring.Domain.Entities;
+namespace Monitoring.Domain.Entities.AlertRule;
///
/// 告警规则实体。id + 外部系统Id索引列 + json_data + 审计列。
/// jsonb 承载规则名称/指标名/阈值/运算符/严重级别/启用/冷却/触发时间。
///
-public class AlertRule : BaseEntity, IFullAudit
+public class AlertRuleEntity : BaseEntity, IFullAudit
{
/// 绑定的外部系统 Id(索引列)。
public Guid ExternalSystemId { get; set; }
diff --git a/src/modules/monitoring/Domain/Entities/ExternalSystem.cs b/src/modules/monitoring/Domain/Entities/ExternalSystem/ExternalSystemEntity.cs
similarity index 91%
rename from src/modules/monitoring/Domain/Entities/ExternalSystem.cs
rename to src/modules/monitoring/Domain/Entities/ExternalSystem/ExternalSystemEntity.cs
index abf310c..52305ce 100644
--- a/src/modules/monitoring/Domain/Entities/ExternalSystem.cs
+++ b/src/modules/monitoring/Domain/Entities/ExternalSystem/ExternalSystemEntity.cs
@@ -1,15 +1,16 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json;
using Monitoring.Domain.Enums;
+using Monitoring.Domain.Values;
-namespace Monitoring.Domain.Entities;
+namespace Monitoring.Domain.Entities.ExternalSystem;
///
/// 外部系统配置实体。极简文档模式:id + 必要索引列 + json_data + 审计列。
/// 所有可变/扩展字段(名称/类型/URL/参数/凭证/同步状态)统一存 JsonData(jsonb),
/// 通过 强类型访问,避免列爆炸。
///
-public class ExternalSystem : BaseEntity, IFullAudit
+public class ExternalSystemEntity : BaseEntity, IFullAudit
{
///
/// 业务数据(jsonb)。承载名称/类型/BaseUrl/参数/凭证/同步状态等全部业务字段。
diff --git a/src/modules/monitoring/Domain/Entities/SyncJob.cs b/src/modules/monitoring/Domain/Entities/SyncJob/SyncJobEntity.cs
similarity index 89%
rename from src/modules/monitoring/Domain/Entities/SyncJob.cs
rename to src/modules/monitoring/Domain/Entities/SyncJob/SyncJobEntity.cs
index 01913a7..9504c8d 100644
--- a/src/modules/monitoring/Domain/Entities/SyncJob.cs
+++ b/src/modules/monitoring/Domain/Entities/SyncJob/SyncJobEntity.cs
@@ -1,20 +1,21 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json;
using Monitoring.Domain.Enums;
+using Monitoring.Domain.Values;
-namespace Monitoring.Domain.Entities;
+namespace Monitoring.Domain.Entities.SyncJob;
///
/// 同步任务记录实体。id + 外部系统Id + 状态/时间索引列 + json_data + 审计列。
/// jsonb 承载触发来源/汇总指标/错误信息。
///
-public class SyncJob : BaseEntity, IFullAudit
+public class SyncJobEntity : BaseEntity, IFullAudit
{
/// 目标外部系统 Id(索引列,高频查询)。
public Guid ExternalSystemId { get; set; }
/// 任务状态(索引列,统计成功率/查 Failed 排查)。
- public SyncJobStatus Status { get; set; } = SyncJobStatus.Pending;
+ public SyncJobStatusEnum Status { get; set; } = SyncJobStatusEnum.Pending;
/// 开始时间(UTC)。
public DateTime? StartedAt { get; set; }
diff --git a/src/modules/monitoring/Domain/Entities/SyncedRecord.cs b/src/modules/monitoring/Domain/Entities/SyncedRecord/SyncedRecordEntity.cs
similarity index 93%
rename from src/modules/monitoring/Domain/Entities/SyncedRecord.cs
rename to src/modules/monitoring/Domain/Entities/SyncedRecord/SyncedRecordEntity.cs
index d66ba6a..2d31646 100644
--- a/src/modules/monitoring/Domain/Entities/SyncedRecord.cs
+++ b/src/modules/monitoring/Domain/Entities/SyncedRecord/SyncedRecordEntity.cs
@@ -1,14 +1,15 @@
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json;
+using Monitoring.Domain.Values;
-namespace Monitoring.Domain.Entities;
+namespace Monitoring.Domain.Entities.SyncedRecord;
///
/// 同步记录实体。id + 外部系统Id/类型/去重键/发生时间索引列 + json_data + 审计列。
/// jsonb 承载从外部拉取的原始业务数据(已换算,如金额分→元)。
/// (ExternalSystemId, ExternalId) 由 Connector 保证幂等,重复拉取只保留最新快照。
///
-public class SyncedRecord : BaseEntity, IFullAudit
+public class SyncedRecordEntity : BaseEntity, IFullAudit
{
/// 来源外部系统 Id(索引列)。
public Guid ExternalSystemId { get; set; }
diff --git a/src/modules/monitoring/Domain/Values/CredentialEntry.cs b/src/modules/monitoring/Domain/Values/CredentialEntry.cs
new file mode 100644
index 0000000..99b834f
--- /dev/null
+++ b/src/modules/monitoring/Domain/Values/CredentialEntry.cs
@@ -0,0 +1,20 @@
+namespace Monitoring.Domain.Entities;
+
+/// 凭证条目(内聚于 SystemData,无独立表)。
+public class CredentialEntry
+{
+ /// 类型:Cookie / Header / BearerToken / Query。
+ public string Type { get; set; } = default!;
+
+ /// 键名(Cookie 名/Header 名/参数名)。
+ public string Key { get; set; } = default!;
+
+ /// 值。TODO 后续加密。
+ public string Value { get; set; } = default!;
+
+ /// 是否启用。
+ public bool IsEnabled { get; set; } = true;
+
+ /// 备注。
+ public string? Remark { get; set; }
+}
diff --git a/src/modules/monitoring/Domain/Values/JobData.cs b/src/modules/monitoring/Domain/Values/JobData.cs
new file mode 100644
index 0000000..f905670
--- /dev/null
+++ b/src/modules/monitoring/Domain/Values/JobData.cs
@@ -0,0 +1,14 @@
+namespace Monitoring.Domain.Entities;
+
+/// 同步任务 json_data 投影。
+public class JobData
+{
+ /// 触发来源:scheduler / manual。
+ public string TriggerSource { get; set; } = "scheduler";
+
+ /// 汇总指标(Connector 产出,如 {order_count:8283, actual_rent:9813.80})。
+ public Dictionary SummaryMetrics { get; set; } = new();
+
+ /// 错误信息(成功时为 null)。
+ public string? ErrorMessage { get; set; }
+}
diff --git a/src/modules/monitoring/Domain/Values/RecordData.cs b/src/modules/monitoring/Domain/Values/RecordData.cs
new file mode 100644
index 0000000..4d4012a
--- /dev/null
+++ b/src/modules/monitoring/Domain/Values/RecordData.cs
@@ -0,0 +1,14 @@
+namespace Monitoring.Domain.Entities;
+
+/// 同步记录 json_data 投影:拉取到的外部原始数据。
+public class RecordData
+{
+ /// 记录类型:order / finance / metric(由 Connector 定义)。
+ public string RecordType { get; set; } = default!;
+
+ /// 外部业务 Id(订单号/流水号)。
+ public string ExternalId { get; set; } = default!;
+
+ /// 原始数据(已换算后的业务字段,如金额已从分转元)。
+ public Dictionary Payload { get; set; } = new();
+}
diff --git a/src/modules/monitoring/Domain/Values/RuleData.cs b/src/modules/monitoring/Domain/Values/RuleData.cs
new file mode 100644
index 0000000..c324731
--- /dev/null
+++ b/src/modules/monitoring/Domain/Values/RuleData.cs
@@ -0,0 +1,31 @@
+using Monitoring.Domain.Enums;
+
+namespace Monitoring.Domain.Entities;
+
+/// 告警规则 json_data 投影。
+public class RuleData
+{
+ /// 规则名称。
+ public string Name { get; set; } = default!;
+
+ /// 监控指标名(对应 JobData.SummaryMetrics 的键)。
+ public string MetricName { get; set; } = default!;
+
+ /// 比较运算符:gt/gte/lt/lte/eq。
+ public string Operator { get; set; } = "gt";
+
+ /// 阈值。
+ public string Threshold { get; set; } = default!;
+
+ /// 严重级别。
+ public AlertSeverity Severity { get; set; } = AlertSeverity.Warning;
+
+ /// 是否启用。
+ public bool IsEnabled { get; set; } = true;
+
+ /// 触发冷却(秒)。
+ public int CooldownSeconds { get; set; } = 3600;
+
+ /// 最近触发时间(UTC 毫秒时间戳)。
+ public long? LastTriggeredAt { get; set; }
+}
diff --git a/src/modules/monitoring/Domain/Values/SystemData.cs b/src/modules/monitoring/Domain/Values/SystemData.cs
new file mode 100644
index 0000000..1b404ec
--- /dev/null
+++ b/src/modules/monitoring/Domain/Values/SystemData.cs
@@ -0,0 +1,38 @@
+using Monitoring.Domain.Enums;
+
+namespace Monitoring.Domain.Values;
+
+///
+/// 外部系统 json_data 投影:承载可变/扩展字段。
+/// 凭证(Cookie/Header/Token)也内聚于此,避免单独建表;Credentials 列表为空时表示无凭证。
+/// Parameters 承载 Connector 专属配置(如 u号租的 sellerId/lookbackDays)。
+///
+public class SystemData
+{
+ /// 系统显示名称。
+ public string Name { get; set; } = default!;
+
+ /// 系统类型:1=UHaoZu, 100=GenericHttp。
+ public ExternalSystemTypeEnum SystemType { get; set; }
+
+ /// Base URL。
+ public string BaseUrl { get; set; } = default!;
+
+ /// 轮询间隔(秒),0=用默认。
+ public int PollIntervalSeconds { get; set; }
+
+ /// 是否启用。
+ public bool IsEnabled { get; set; } = true;
+
+ /// Connector 专属参数(如 sellerId/lookbackDays)。
+ public Dictionary Parameters { get; set; } = new();
+
+ /// 凭证列表(Cookie/Header/Token),不再单独建表。
+ public List Credentials { get; set; } = new();
+
+ /// 最近同步时间(UTC 毫秒时间戳)。
+ public long? LastSyncedAt { get; set; }
+
+ /// 最近同步任务 Id。
+ public Guid? LastSyncJobId { get; set; }
+}