|
- using Campaign_Tracker.Server.ExtensionData;
-
- namespace Campaign_Tracker.Server.Municipalities;
-
- /// <summary>
- /// Extension-layer entity that stores municipality account data linked to a legacy jurisdiction.
- /// Implements <see cref="ILegacyLinkedRecord"/> so the nightly integrity check can verify
- /// the JCode reference is still valid (Story 1.8 AC #4 / NFR13).
- /// </summary>
- public sealed record MunicipalityProfile(
- string ProfileId,
- string JCode,
- string? DisplayName,
- DateTimeOffset CreatedAt,
- DateTimeOffset UpdatedAt,
- string UpdatedBy) : ILegacyLinkedRecord
- {
- public string RecordType => "MunicipalityProfile";
- public string RecordId => ProfileId;
- public LegacyLinkReference LegacyLink => LegacyLinkReference.ForJurisdiction(JCode);
- }
|