using EnvelopeGenerator.Domain.Constants; namespace EnvelopeGenerator.Application.Common.Interfaces.Services.Notification; /// /// /// public record DocumentReceivedNotification : EnvelopeNotificationBase { /// /// /// public required string DocumentTitle { get; init; } /// /// /// public required string NameReceiver { get; init; } /// /// /// public required string NameSender { get; init; } /// /// [SIGNATURE_TYPE] /// public required bool IsReadAndConfirm { private get; init; } /// /// /// public string SignatureType => IsReadAndConfirm ? "Signieren" : "Lesen und bestätigen"; /// /// /// public required bool AdvancedSignature { private get; init; } /// /// /// public string DocumentProcess => AdvancedSignature ? " und elektronisch unterschreiben" : string.Empty; /// /// /// public required string LinkToDocument { get; init; } /// /// /// public string LinkToDocumentText => LinkToDocument[..Math.Min(LinkToDocument.Length, 40)]; /// /// /// public required string Message { get; init; } /// /// /// public string NamePortal { get; set; } = "signFLOW Portal"; /// /// /// /// public override EmailTemplateType GetTemplateType() { return EmailTemplateType.DocumentReceived; } }