diff --git a/EnvelopeGenerator.Application/EmailTemplates/Queries/ReadEmailTemplateQuery.cs b/EnvelopeGenerator.Application/EmailTemplates/Queries/ReadEmailTemplateQuery.cs
index a64f4778..11c97cfa 100644
--- a/EnvelopeGenerator.Application/EmailTemplates/Queries/ReadEmailTemplateQuery.cs
+++ b/EnvelopeGenerator.Application/EmailTemplates/Queries/ReadEmailTemplateQuery.cs
@@ -13,7 +13,7 @@ namespace EnvelopeGenerator.Application.EmailTemplates.Queries;
/// Stellt eine Abfrage dar, um eine E-Mail-Vorlage zu lesen.
/// Diese Klasse erbt von .
///
-public record ReadEmailTemplateQuery : IEmailTemplateQuery, IRequest
+public record ReadEmailTemplateQuery : IEmailTemplateQuery, IRequest>
{
///
/// Die eindeutige Kennung der E-Mail-Vorlage (optional).
@@ -34,12 +34,17 @@ public record ReadEmailTemplateQuery : IEmailTemplateQuery, IRequest
public EmailTemplateType? Type { get; set; }
+
+ ///
+ ///
+ ///
+ public string? LangCode { get; set; }
}
///
///
///
-public class ReadEmailTemplateQueryHandler : IRequestHandler
+public class ReadEmailTemplateQueryHandler : IRequestHandler>
{
private readonly IMapper _mapper;
@@ -65,14 +70,21 @@ public class ReadEmailTemplateQueryHandler : IRequestHandler
///
///
- public async Task Handle(ReadEmailTemplateQuery request, CancellationToken cancel)
+ public async Task> Handle(ReadEmailTemplateQuery request, CancellationToken cancel)
{
- var query = request.Id is int id
- ? _repo.Query.Where(temp => temp.Id == id)
- : _repo.Query.Where(temp => temp.Name == request.Type!.ToString());
+ var query = _repo.Query;
- var entity = await query.FirstOrDefaultAsync(cancel) ?? throw new NotFoundException();
+ if (request.Id is int id)
+ query = query.Where(temp => temp.Id == id);
- return _mapper.Map(entity);
+ if (request.Type is EmailTemplateType type)
+ query = query.Where(temp => temp.Name == type.ToString());
+
+ if (request.LangCode is string langCode)
+ query = query.Where(temp => temp.LangCode == langCode);
+
+ var entity = await query.ToListAsync(cancel);
+
+ return _mapper.Map>(entity);
}
}
\ No newline at end of file