using DigitalData.Core.API; using DigitalData.EmailProfilerDispatcher.API.Resources; using DigitalData.EmailProfilerDispatcher.Application.Contracts; using DigitalData.EmailProfilerDispatcher.Application.DTOs.EmailOut; using DigitalData.EmailProfilerDispatcher.Application.Services; using DigitalData.EmailProfilerDispatcher.Domain.Attributes; using DigitalData.EmailProfilerDispatcher.Domain.Entities; using DigitalData.EmailProfilerDispatcher.Infrastructure.Contracts; using Microsoft.AspNetCore.Mvc; namespace DigitalData.EmailProfilerGateway.API.Controllers { public class MailController : CRUDControllerBase { public MailController(ILogger logger, IEmailOutService service) : base(logger, service) { } [HttpGet("fill-out")] public IActionResult FillOut(string? template = null) { template ??= @"Guten Tag [NAME_RECEIVER],

hiermit bestätigen wir Ihnen die erfolgreiche Signatur für den Vorgang '[DOCUMENT_TITLE]'.
Wenn alle Vertragspartner unterzeichnet haben, erhalten Sie ebenfalls per email ein unterschriebenes Exemplar mit dem Signierungszertifikat!
Mit freundlichen Grüßen

[NAME_PORTAL]"; var mailData = new MailData(); var expectedOutput = @"Guten Tag Tom,

hiermit bestätigen wir Ihnen die erfolgreiche Signatur für den Vorgang 'Vertragsdokument'.
Wenn alle Vertragspartner unterzeichnet haben, erhalten Sie ebenfalls per email ein unterschriebenes Exemplar mit dem Signierungszertifikat!
Mit freundlichen Grüßen

DokumentenPortal"; var result = EmailOutService.FillTemplate(template, mailData); return Ok(result); } public class MailData { [TemplatePlaceholder("[NAME_RECEIVER]")] public string NameReceiver { get; set; } = "Tom"; [TemplatePlaceholder("[DOCUMENT_TITLE]")] public string DocumentTitle { get; set; } = "Vertragsdokument"; [TemplatePlaceholder("[NAME_PORTAL]")] public string NamePortal { get; set; } = "DokumentenPortal"; } } }