namespace Domain.Entities;
///
/// Represents the physical location of a . Maps to the BreweryPostLocation table.
/// Each brewery post has at most one location, and the location is deleted automatically when its parent post is deleted.
///
public class BreweryPostLocation
{
///
/// Primary key identifying this location. Maps to BreweryPostLocationID.
///
public Guid BreweryPostLocationId { get; set; }
///
/// Foreign key referencing the owning . Maps to BreweryPostID; unique, enforcing a one-to-one relationship.
///
public Guid BreweryPostId { get; set; }
///
/// The primary street address line.
///
public string AddressLine1 { get; set; } = string.Empty;
///
/// An optional secondary address line (e.g., suite or unit number).
///
public string? AddressLine2 { get; set; }
///
/// The postal/ZIP code of the location.
///
public string PostalCode { get; set; } = string.Empty;
///
/// Foreign key referencing the city in which the brewery is located. Maps to CityID.
///
public Guid CityId { get; set; }
///
/// Serialized SQL Server GEOGRAPHY value representing the geographic coordinates of the location, or null if not set.
///
public byte[]? Coordinates { get; set; }
///
/// SQL Server ROWVERSION concurrency token used to detect concurrent updates. null until the row has been read from the database.
///
public byte[]? Timer { get; set; }
}