package jnpf.audit.model; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; /** * 审计事件 DTO:字段与 {@link jnpf.bizcommon.audit.entity.AuditEventEntity} 同名同型, * id/createdAt 除外(DB 生成字段,不由调用方提供)。 * *
toBuilder 供 SDK 做不可变拷贝;@NoArgsConstructor 是硬性规则 L004—— * 本类要经 JSON/MQ 反序列化,缺了会在 fastjson/jackson 处踩雷。 */ @Data @Builder(toBuilder = true) @NoArgsConstructor @AllArgsConstructor public class AuditEventDTO { private String clientEventId; private String operationId; private Date eventTime; private String tenantId; private String operatorId; private String operatorName; private String operatorOrgId; private String appName; private String bizModule; private String ip; private String ipRegion; private String browser; private String os; private String requestUri; private String eventType; private String actionCode; private String actionLabel; private Integer sourceLayer; private String targetTable; private String targetId; private String bizType; private String bizCode; private String fieldDiffs; private String extra; private String dataSnapshot; private String reason; private String recordTitle; private String entryType; private String entryId; private String entryName; private String prevHash; /** * 本次成功业务操作使用的电子签名 id,仅供审计接收端回读签名凭证并补充签名事件。 * 该字段不映射 audit_events,也不会作为业务事件详情返回。 */ private String relatedSignId; }