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