namespace GerbilManagerWebAPI.Dtos
{
    /// <summary>EXHIBITION: payload for POST /exhibitions.</summary>
    public record ExhibitionResultInput(
        Guid? GerbilId,
        string? EntityName,
        string EventName,
        DateTime? Date,
        string? Placement,
        string? Award,
        string? Note);

    /// <summary>EXHIBITION: payload for PUT /exhibitions/{id} (all fields optional/partial).</summary>
    public record ExhibitionResultUpdate(
        Guid? GerbilId,
        string? EntityName,
        string? EventName,
        DateTime? Date,
        string? Placement,
        string? Award,
        string? Note);

    /// <summary>EXHIBITION: response DTO for a stored exhibition result.</summary>
    public record ExhibitionResultDto(
        Guid Id,
        Guid? GerbilId,
        string? EntityName,
        string EventName,
        DateTime? Date,
        string? Placement,
        string? Award,
        string? Note,
        DateTimeOffset CreatedAt);
}
