package jnpf.bizcommon.audit.service.value; import lombok.Getter; import java.util.Collections; import java.util.Date; import java.util.LinkedHashMap; import java.util.Map; /** 单条审计事件的值解析边界;引用查询必须受 targetTable 与 tenantId 约束。 */ @Getter public class AuditFieldValueContext { private final String targetTable; private final String tenantId; private final Date eventTime; /** 字段名(小写)到 JNPF dictionaryType;事件快照优先于当前发布配置。 */ private final Map dictionaryTypes; public AuditFieldValueContext(String targetTable, String tenantId, Date eventTime) { this(targetTable, tenantId, eventTime, Collections.emptyMap()); } public AuditFieldValueContext(String targetTable, String tenantId, Date eventTime, Map dictionaryTypes) { this.targetTable = targetTable; this.tenantId = tenantId; this.eventTime = eventTime; this.dictionaryTypes = dictionaryTypes == null || dictionaryTypes.isEmpty() ? Collections.emptyMap() : Collections.unmodifiableMap(new LinkedHashMap<>(dictionaryTypes)); } }