From 814df63306d46d8bbce819ed1917c9c15efecc0e Mon Sep 17 00:00:00 2001 From: TekH Date: Wed, 28 Jan 2026 12:55:44 +0100 Subject: [PATCH] Add MediatR query/handler for reading envelope types Introduced ReadEnvelopeTypesQuery and its handler to fetch all envelope types from the repository, map them to DTOs, and return the result via MediatR. This enables clean, decoupled retrieval of envelope types in the application. --- .../Queries/ReadEnvelopeTypesQuery.cs | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 EnvelopeGenerator.Application/EnvelopeTypes/Queries/ReadEnvelopeTypesQuery.cs diff --git a/EnvelopeGenerator.Application/EnvelopeTypes/Queries/ReadEnvelopeTypesQuery.cs b/EnvelopeGenerator.Application/EnvelopeTypes/Queries/ReadEnvelopeTypesQuery.cs new file mode 100644 index 00000000..dc7fafc8 --- /dev/null +++ b/EnvelopeGenerator.Application/EnvelopeTypes/Queries/ReadEnvelopeTypesQuery.cs @@ -0,0 +1,45 @@ +using EnvelopeGenerator.Application.Common.Dto; +using MediatR; +using AutoMapper; +using DigitalData.Core.Abstraction.Application.Repository; +using EnvelopeGenerator.Domain.Entities; +using Microsoft.EntityFrameworkCore; + +namespace EnvelopeGenerator.Application.EnvelopeTypes.Queries; + +/// +/// +/// +public record ReadEnvelopeTypesQuery : IRequest>; + +/// +/// +/// +public class ReadEnvelopeTypesQueryHandler : IRequestHandler> +{ + private readonly IRepository _repository; + private readonly IMapper _mapper; + + /// + /// + /// + /// + /// + public ReadEnvelopeTypesQueryHandler(IRepository repository, IMapper mapper) + { + _repository = repository; + _mapper = mapper; + } + + /// + /// + /// + /// + /// + /// + public async Task> Handle(ReadEnvelopeTypesQuery request, CancellationToken cancellationToken) + { + var types = await _repository.Query.AsNoTracking().ToListAsync(cancellationToken); + return _mapper.Map>(types); + } +} \ No newline at end of file