package dev.lions.unionflow.server.api.dto.ticket.request;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import java.util.List;
import java.util.UUID;
import lombok.Builder;

/**
 * Requête de création d'un ticket de support.
 *
 * @author UnionFlow Team
 * @version 1.0
 */
@Builder
public record CreateTicketRequest(
        @NotNull(message = "L'ID de l'utilisateur est obligatoire") UUID utilisateurId,

        @NotBlank(message = "Le sujet est obligatoire") @Size(max = 200) String sujet,

        @NotBlank(message = "La description est obligatoire") @Size(max = 2000) String description,

        @NotBlank(message = "La catégorie est obligatoire") String categorie,

        @NotBlank(message = "La priorité est obligatoire") String priorite,

        List<String> piecesJointes) {
}
