namespace MarketingDAL.DTO.LeadMagnet; /// /// MarketMind AI execution layer — a LeadMagnet (MLEADMAGNET): a gated-content offer that feeds /// the AutomationHub lead-sourcing pipeline (see the plan, /// ~/.claude/plans/in-entitlement-also-we-async-charm.md, Phase 0 — MarketMind AI). /// public class LeadMagnetDTO { #region LeadMagnet public int LeadMagnetId { get; set; } public string LeadMagnetCode { get; set; } = string.Empty; public string LeadMagnetName { get; set; } = string.Empty; /// Free text — e.g. "eBook"/"Webinar"/"Checklist" — too varied across tenants to enumerate. public string OfferType { get; set; } = string.Empty; /// Optional FK to MMKTCAMPAIGN — -1 sentinel = not applicable. public int CampaignId { get; set; } = -1; public string? CampaignCode { get; set; } public string? CampaignName { get; set; } /// Free-form JSON describing which fields a gate form captures. public string? GatingFieldsJson { get; set; } public string? Remarks { get; set; } #endregion #region Base public int CreatedById { get; set; } public DateTime CreatedOn { get; set; } public string? CreatedByName { get; set; } public int ModifiedById { get; set; } public DateTime ModifiedOn { get; set; } public string? ModifiedByName { get; set; } #endregion #region Standard public short SortOrder { get; set; } public byte Status { get; set; } public short Version { get; set; } public int TenantId { get; set; } #endregion }