using EnvelopeGenerator.Application.Dto;
using MediatR;
using Microsoft.AspNetCore.Mvc.ModelBinding;
using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
namespace EnvelopeGenerator.Application.Envelopes.Commands;
///
/// Befehl zur Erstellung eines Umschlags.
///
public class CreateEnvelopeCommand : IRequest
{
///
/// Der Titel des Umschlags. Dies ist ein Pflichtfeld.
///
[Required]
public required string Title { get; set; }
///
/// Die Nachricht, die im Umschlag enthalten sein soll. Dies ist ein Pflichtfeld.
///
[Required]
public required string Message { get; set; }
///
/// Gibt an, ob die Zwei-Faktor-Authentifizierung für den Umschlag aktiviert ist. Standardmäßig false.
///
public bool TFAEnabled { get; set; } = false;
///
/// ID des Absenders
///
[JsonIgnore]
[BindNever]
public int? UserId { get; set; }
}