namespace Features.Breweries.Dtos;
///
/// Represents the location details of an existing brewery, as returned in .
///
public class BreweryLocationDto
{
///
/// The unique identifier of the brewery's location record.
///
public Guid BreweryPostLocationId { get; set; }
///
/// The unique identifier of the brewery post that this location belongs to.
///
public Guid BreweryPostId { get; set; }
///
/// The unique identifier of the city in which the brewery is located.
///
public Guid CityId { get; set; }
///
/// The primary street address line of the brewery.
///
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 brewery's address.
///
public string PostalCode { get; set; } = string.Empty;
///
/// The optional geographic coordinates of the brewery, in a raw binary representation.
///
public byte[]? Coordinates { get; set; }
}
///
/// Represents a brewery post as returned by the brewery endpoints, including its metadata and
/// optional location.
///
public class BreweryDto
{
///
/// The unique identifier of the brewery post.
///
public Guid BreweryPostId { get; set; }
///
/// The unique identifier of the user account that created the brewery post.
///
public Guid PostedById { get; set; }
///
/// The name of the brewery.
///
public string BreweryName { get; set; } = string.Empty;
///
/// A description of the brewery.
///
public string Description { get; set; } = string.Empty;
///
/// The date and time at which the brewery post was created.
///
public DateTime CreatedAt { get; set; }
///
/// The date and time at which the brewery post was last updated, or null if it has never been updated.
///
public DateTime? UpdatedAt { get; set; }
///
/// A row-version/concurrency token used to detect conflicting concurrent updates to the brewery post.
///
public byte[]? Timer { get; set; }
///
/// The location details of the brewery, or null if no location is associated with it.
///
public BreweryLocationDto? Location { get; set; }
}