using AutoMapper; using Diligent.WebAPI.Business.Interfaces; using Diligent.WebAPI.Business.Services; using Diligent.WebAPI.Host.Mediator.Request.Commands; using MediatR; namespace Diligent.WebAPI.Host.Mediator.Request.Handlers { public class CreateRequestHandler : IRequestHandler { private readonly IMapper _mapper; private readonly IRequestRepository _requestService; public CreateRequestHandler(IMapper mapper, IRequestRepository requestService) { _mapper = mapper; _requestService = requestService; } public async Task Handle(CreateRequestCommand request, CancellationToken cancellationToken) { var createdRequest = _mapper.Map(request.Request); await _requestService.CreateAsync(createdRequest); return createdRequest; } } }