using DigitalData.Core.Abstraction.Application.Repository; using EnvelopeGenerator.Application.Dto; using EnvelopeGenerator.Domain.Entities; using MediatR; using Microsoft.EntityFrameworkCore; using System.Linq; namespace EnvelopeGenerator.Application.EmailTemplates.Commands.Reset; /// /// /// public class ResetEmailTemplateCommandHandler : IRequestHandler { private readonly IRepository _repository; /// /// /// /// public ResetEmailTemplateCommandHandler(IRepository repository) { _repository = repository; } /// /// /// /// /// /// [Obsolete("Use Read-method returning IReadQuery instead.")] public async Task Handle(ResetEmailTemplateCommand request, CancellationToken cancel) { var temps = request.Id is not null ? await _repository.ReadOnly().Where(t => t.Id == request.Id).ToListAsync(cancel) : request.Type is not null ? await _repository.ReadOnly().Where(t => t.Name == request.Type.ToString()).ToListAsync(cancel) : await _repository.ReadOnly().ToListAsync(cancel); foreach (var temp in temps) { var def = Defaults.Where(t => t.Name == temp.Name).FirstOrDefault(); if(def is not null) await _repository.UpdateAsync(def, t => t.Id == temp.Id, cancel); } } /// /// /// public static readonly IEnumerable Defaults = new List() { new(){ Id = 1, Name = "DocumentReceived", Body = "Guten Tag [NAME_RECEIVER],
\r\n
\r\n[NAME_SENDER] hat Ihnen ein Dokument zum [SIGNATURE_TYPE] gesendet.
\r\n
\r\nÜber den folgenden Link können Sie das Dokument einsehen und elektronisch unterschreiben: [LINK_TO_DOCUMENT_TEXT]
\r\n
\r\n[MESSAGE]
\r\n
\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "Dokument erhalten: '[DOCUMENT_TITLE]'" }, new(){ Id = 2, Name = "DocumentDeleted", Body = "Guten Tag [NAME_RECEIVER],
\r\n
\r\n[NAME_SENDER] hat den Umschlag '[DOCUMENT_TITLE]' gelöscht/zurückgezogen.

\rBegründung:
[REASON]

\r\n
\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "Umschlag zurückgezogen: '[DOCUMENT_TITLE]'" }, new(){ Id = 3, Name = "DocumentSigned", Body = "Guten Tag [NAME_RECEIVER],
\r\n
\r\nhiermit bestätigen wir Ihnen die erfolgreiche Signatur für den Vorgang '[DOCUMENT_TITLE]'.
\r\nWenn alle Vertragspartner unterzeichnet haben, erhalten Sie ebenfalls per email ein unterschriebenes Exemplar mit dem Signierungszertifikat!\r\n
\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "Dokument unterschrieben: '[DOCUMENT_TITLE]'" }, new(){ Id = 4, Name = "DocumentCompleted", Body = "Guten Tag [NAME_RECEIVER],
\r\n
\r\nDer Signaturvorgang '[DOCUMENT_TITLE]' wurde erfolgreich abgeschlossen.
\r\n
\r\nSie erhalten das Dokument mit einem detaillierten Ergebnisbericht als Anhang zu dieser EmailAddress.
\r\n
\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "Umschlag abgeschlossen: '[DOCUMENT_TITLE]'" }, new(){ Id = 5, Name = "DocumentAccessCodeReceived", Body = "Guten Tag [NAME_RECEIVER],
\r\n
\r\n[NAME_SENDER] hat Ihnen ein Dokument zum [SIGNATURE_TYPE] gesendet.
\r\n
\r\nVerwenden Sie den folgenden Zugriffscode, um das Dokument einzusehen:
\r\n
\r\n[DOCUMENT_ACCESS_CODE]
\r\n
\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "Zugriffscode für Dokument erhalten: '[DOCUMENT_TITLE]'" }, new(){ Id = 6, Name = "DocumentRejected_ADM", Body = "Guten Tag [NAME_SENDER],

[NAME_RECEIVER] hat den Umschlag '[DOCUMENT_TITLE]' mit folgendem Grund abgelehnt:

\r\n[REASON] \r\n

Der Umschlag wurde auf den Include Rejected gesetzt.

\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "'[DOCUMENT_TITLE]' - Unterzeichnungsvorgang zurückgezogen" }, new(){ Id = 9, Name = "DocumentRejected_REC", Body = "Guten Tag [NAME_RECEIVER],\r\n

Hiermit bestätigen wir Ihnen die Ablehnung des Unterzeichnungsvorganges '[DOCUMENT_TITLE]'!

Der Vertragsinhaber [NAME_SENDER] wurde über die Ablehnung informiert.

\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "'[DOCUMENT_TITLE]' - Bestätigung Ablehnung" }, new(){ Id = 10, Name = "DocumentRejected_REC_2", Body = "Guten Tag [NAME_RECEIVER],\r\n

Der Unterzeichnungsvorganges '[DOCUMENT_TITLE]' wurde durch einen anderen Vertragspartner abgelehnt! Ihre notwendige Unterzeichnung wurde verworfen.

Der Vertragsinhaber [NAME_SENDER] wird sich bei Bedarf mit Ihnen in Verbindung setzen.

\r\nMit freundlichen Grüßen
\r\n
\r\n[NAME_PORTAL]", Subject = "'[DOCUMENT_TITLE]' - Unterzeichnungsvorgang abgelehnt." }, new(){ Id = 11, Name = "DocumentShared", Body = "Guten Tag,

[NAME_RECEIVER] hat Ihnen ein Dokument zum Ansehen gesendet.

Über den folgenden Link können Sie das Dokument einsehen: [LINK_TO_DOCUMENT_TEXT]


Mit freundlichen Grüßen

[NAME_PORTAL]", Subject = "Dokument geteilt: '[DOCUMENT_TITLE]'" }, new(){ Id = 12, Name = "TotpSecret", Body = "Guten Tag,

Sie können auf Ihren Zwei-Faktor-Authentifizierungscode zugreifen, indem Sie den unten stehenden QR-Code mit einer beliebigen Authentifizierungs-App auf Ihrem Telefon scannen (Google Authenticator, Microsoft Authenticator usw.). Dieser Code ist bis zum [TFA_EXPIRATION] gültig.



\r\n
Mit freundlichen Grüßen

[NAME_PORTAL]", Subject = "2-Faktor-Verifizierung QR-Code" } }; }