using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace GB5Shared.DTO.PubSub { public class OutboxDTO { public int OutboxId { get; set; } // OUTBOXID, PK public int ObjectTypeId { get; set; } = -1; // OBJECTTYPEID public int ObjectId { get; set; } = -1; // OBJECTID public int EventTypeId { get; set; } = -1; // EVENTTYPEID public int Version { get; set; } = 1; // VERSION public string? CorrelationKey { get; set; } // CORRELATIONKEY, nullable public object? Payload { get; set; } // PAYLOAD public byte Status { get; set; } = 0; // STATUS (0=PENDING,1=PUBLISHED,2=FAILED) public DateTime CreatedOn { get; set; } // CREATEDON public Guid? HeaderRowGuid { get; set; } // HEADERROWGUID, nullable public string? ContextJson { get; set; } // CONTEXTJSON — Bag carried through to subscriber } }