Files
FrontOffice.BFF/src/FrontOffice.BFF.WebApi/Services/TransactionService.cs
2025-10-13 12:09:06 +03:30

33 lines
1.9 KiB
C#

using FrontOffice.BFF.Transaction.Protobuf.Protos.Transaction;
using FrontOffice.BFF.WebApi.Common.Services;
using FrontOffice.BFF.Application.TransactionCQ.Queries.GetTransaction;
using FrontOffice.BFF.Application.TransactionCQ.Queries.GetAllTransactionByFilter;
using FrontOffice.BFF.Application.TransactionCQ.Commands.PaymentRequest;
using FrontOffice.BFF.Application.TransactionCQ.Commands.PaymentVerification;
namespace FrontOffice.BFF.WebApi.Services;
public class TransactionService : TransactionContract.TransactionContractBase
{
private readonly IDispatchRequestToCQRS _dispatchRequestToCQRS;
public TransactionService(IDispatchRequestToCQRS dispatchRequestToCQRS)
{
_dispatchRequestToCQRS = dispatchRequestToCQRS;
}
public override async Task<GetTransactionResponse> GetTransaction(GetTransactionRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle<GetTransactionRequest, GetTransactionQuery, GetTransactionResponse>(request, context);
}
public override async Task<GetAllTransactionByFilterResponse> GetAllTransactionByFilter(GetAllTransactionByFilterRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle<GetAllTransactionByFilterRequest, GetAllTransactionByFilterQuery, GetAllTransactionByFilterResponse>(request, context);
}
public override async Task<PaymentRequestResponse> PaymentRequest(PaymentRequestRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle<PaymentRequestRequest, PaymentRequestCommand, PaymentRequestResponse>(request, context);
}
public override async Task<PaymentVerificationResponse> PaymentVerification(PaymentVerificationRequest request, ServerCallContext context)
{
return await _dispatchRequestToCQRS.Handle<PaymentVerificationRequest, PaymentVerificationCommand, PaymentVerificationResponse>(request, context);
}
}