namespace GerbilManagerWebAPI.Dtos
{
/// ABGABE-STATUS: response DTO for a stored reservation/sale status.
public record SaleReservationDto(
Guid Id,
Guid GerbilId,
string? GerbilName,
string Status,
Guid? ReservedForContactId,
string? ContactName,
DateTime? AppointmentDate,
decimal? Price,
string? Note,
DateTime? HandedOverDate,
DateTimeOffset CreatedAt,
DateTimeOffset UpdatedAt);
/// ABGABE-STATUS: payload for POST /reservations.
public record SaleReservationInput(
Guid GerbilId,
string? GerbilName,
string? Status,
Guid? ReservedForContactId,
string? ContactName,
DateTime? AppointmentDate,
decimal? Price,
string? Note,
DateTime? HandedOverDate);
///
/// ABGABE-STATUS: payload for PUT /reservations/{id}. All fields optional — only the
/// provided ones are changed. A null/blank Status is ignored.
///
public record SaleReservationUpdate(
string? GerbilName,
string? Status,
Guid? ReservedForContactId,
string? ContactName,
DateTime? AppointmentDate,
decimal? Price,
string? Note,
DateTime? HandedOverDate);
}