package de.effigenix.domain.production.event;

import de.effigenix.domain.production.BatchId;
import de.effigenix.domain.production.BatchNumber;
import de.effigenix.domain.production.RecipeId;
import de.effigenix.shared.common.Quantity;
import de.effigenix.shared.event.DomainEvent;

import java.time.Instant;
import java.time.LocalDate;
import java.time.OffsetDateTime;

public record BatchCompleted(
        BatchId batchId,
        BatchNumber batchNumber,
        RecipeId recipeId,
        String articleId,
        Quantity actualQuantity,
        Quantity waste,
        LocalDate bestBeforeDate,
        OffsetDateTime completedAt,
        Instant occurredAt
) implements DomainEvent {}
