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
);