using BackOffice.BFF.DiscountOrder.Protobuf.Protos.DiscountOrder; using Mapster; namespace BackOffice.BFF.Application.DiscountOrderCQ.Queries.GetOrderById; public class GetOrderByIdQueryHandler : IRequestHandler { private readonly IApplicationContractContext _context; public GetOrderByIdQueryHandler(IApplicationContractContext context) { _context = context; } public async Task Handle(GetOrderByIdQuery request, CancellationToken cancellationToken) { var grpcRequest = new GetOrderByIdRequest { OrderId = request.OrderId, UserId = request.UserId }; var response = await _context.DiscountOrders.GetOrderByIdAsync(grpcRequest, cancellationToken: cancellationToken); return TypeAdapter.Adapt(response, response.GetType(), typeof(GetOrderByIdResponseDto)) as GetOrderByIdResponseDto; } }