using Domain.Entities; using Features.Breweries.Dtos; using MediatR; namespace Features.Breweries.Commands.CreateBrewery; /// /// Describes the location supplied when creating a brewery. /// /// /// Serialized geographic coordinates for the brewery. /// public record CreateBreweryLocation( Guid CityId, string AddressLine1, string? AddressLine2, string PostalCode, CoordinateData? Coordinates ); /// /// Represents the application request used to create a brewery post. /// public record CreateBreweryCommand( Guid PostedById, string BreweryName, string Description, CreateBreweryLocation Location ) : IRequest; /// /// Defines the client-supplied body for creating a brewery post. /// public record CreateBreweryRequest( string BreweryName, string Description, CreateBreweryLocation Location );