🐛 Fix dozens of issue in PaymentServiceGrpc
This commit is contained in:
		@@ -5,15 +5,21 @@ using NodaTime;
 | 
			
		||||
 | 
			
		||||
namespace DysonNetwork.Pass.Wallet;
 | 
			
		||||
 | 
			
		||||
public class PaymentServiceGrpc(PaymentService paymentService) : Shared.Proto.PaymentService.PaymentServiceBase
 | 
			
		||||
public class PaymentServiceGrpc(PaymentService paymentService)
 | 
			
		||||
    : Shared.Proto.PaymentService.PaymentServiceBase
 | 
			
		||||
{
 | 
			
		||||
    public override async Task<Shared.Proto.Order> CreateOrder(CreateOrderRequest request, ServerCallContext context)
 | 
			
		||||
    public override async Task<Shared.Proto.Order> CreateOrder(
 | 
			
		||||
        CreateOrderRequest request,
 | 
			
		||||
        ServerCallContext context
 | 
			
		||||
    )
 | 
			
		||||
    {
 | 
			
		||||
        var order = await paymentService.CreateOrderAsync(
 | 
			
		||||
            request.HasPayeeWalletId ? Guid.Parse(request.PayeeWalletId) : null,
 | 
			
		||||
            request.Currency,
 | 
			
		||||
            decimal.Parse(request.Amount),
 | 
			
		||||
            request.Expiration is not null ? Duration.FromSeconds(request.Expiration.Seconds) : null,
 | 
			
		||||
            request.Expiration is not null
 | 
			
		||||
                ? Duration.FromSeconds(request.Expiration.Seconds)
 | 
			
		||||
                : null,
 | 
			
		||||
            request.HasAppIdentifier ? request.AppIdentifier : SnWalletOrder.InternalAppIdentifier,
 | 
			
		||||
            request.HasProductIdentifier ? request.ProductIdentifier : null,
 | 
			
		||||
            request.HasRemarks ? request.Remarks : null,
 | 
			
		||||
@@ -26,50 +32,65 @@ public class PaymentServiceGrpc(PaymentService paymentService) : Shared.Proto.Pa
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override async Task<Shared.Proto.Transaction> CreateTransactionWithAccount(
 | 
			
		||||
        CreateTransactionWithAccountRequest request, ServerCallContext context)
 | 
			
		||||
        CreateTransactionWithAccountRequest request,
 | 
			
		||||
        ServerCallContext context
 | 
			
		||||
    )
 | 
			
		||||
    {
 | 
			
		||||
        var transaction = await paymentService.CreateTransactionWithAccountAsync(
 | 
			
		||||
            request.HasPayerAccountId ? Guid.Parse(request.PayerAccountId) : null,
 | 
			
		||||
            request.HasPayeeAccountId ? Guid.Parse(request.PayeeAccountId) : null,
 | 
			
		||||
            request.PayerAccountId is not null ? Guid.Parse(request.PayerAccountId) : null,
 | 
			
		||||
            request.PayeeAccountId is not null ? Guid.Parse(request.PayeeAccountId) : null,
 | 
			
		||||
            request.Currency,
 | 
			
		||||
            decimal.Parse(request.Amount),
 | 
			
		||||
            request.HasRemarks ? request.Remarks : null,
 | 
			
		||||
            request.Remarks is not null ? request.Remarks : null,
 | 
			
		||||
            (Shared.Models.TransactionType)request.Type
 | 
			
		||||
        );
 | 
			
		||||
        return transaction.ToProtoValue();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override async Task<Shared.Proto.Transaction> CreateTransaction(CreateTransactionRequest request,
 | 
			
		||||
        ServerCallContext context)
 | 
			
		||||
    public override async Task<Shared.Proto.Transaction> CreateTransaction(
 | 
			
		||||
        CreateTransactionRequest request,
 | 
			
		||||
        ServerCallContext context
 | 
			
		||||
    )
 | 
			
		||||
    {
 | 
			
		||||
        var transaction = await paymentService.CreateTransactionAsync(
 | 
			
		||||
            request.HasPayerWalletId ? Guid.Parse(request.PayerWalletId) : null,
 | 
			
		||||
            request.HasPayeeWalletId ? Guid.Parse(request.PayeeWalletId) : null,
 | 
			
		||||
            request.PayerWalletId is not null ? Guid.Parse(request.PayerWalletId) : null,
 | 
			
		||||
            request.PayeeWalletId is not null ? Guid.Parse(request.PayeeWalletId) : null,
 | 
			
		||||
            request.Currency,
 | 
			
		||||
            decimal.Parse(request.Amount),
 | 
			
		||||
            request.HasRemarks ? request.Remarks : null,
 | 
			
		||||
            request.Remarks is not null ? request.Remarks : null,
 | 
			
		||||
            (Shared.Models.TransactionType)request.Type
 | 
			
		||||
        );
 | 
			
		||||
        return transaction.ToProtoValue();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override async Task<Shared.Proto.Order> CancelOrder(CancelOrderRequest request, ServerCallContext context)
 | 
			
		||||
    public override async Task<Shared.Proto.Order> CancelOrder(
 | 
			
		||||
        CancelOrderRequest request,
 | 
			
		||||
        ServerCallContext context
 | 
			
		||||
    )
 | 
			
		||||
    {
 | 
			
		||||
        var order = await paymentService.CancelOrderAsync(Guid.Parse(request.OrderId));
 | 
			
		||||
        return order.ToProtoValue();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override async Task<RefundOrderResponse> RefundOrder(RefundOrderRequest request, ServerCallContext context)
 | 
			
		||||
    public override async Task<RefundOrderResponse> RefundOrder(
 | 
			
		||||
        RefundOrderRequest request,
 | 
			
		||||
        ServerCallContext context
 | 
			
		||||
    )
 | 
			
		||||
    {
 | 
			
		||||
        var (order, refundTransaction) = await paymentService.RefundOrderAsync(Guid.Parse(request.OrderId));
 | 
			
		||||
        var (order, refundTransaction) = await paymentService.RefundOrderAsync(
 | 
			
		||||
            Guid.Parse(request.OrderId)
 | 
			
		||||
        );
 | 
			
		||||
        return new RefundOrderResponse
 | 
			
		||||
        {
 | 
			
		||||
            Order = order.ToProtoValue(),
 | 
			
		||||
            RefundTransaction = refundTransaction.ToProtoValue()
 | 
			
		||||
            RefundTransaction = refundTransaction.ToProtoValue(),
 | 
			
		||||
        };
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public override async Task<Shared.Proto.Transaction> Transfer(TransferRequest request, ServerCallContext context)
 | 
			
		||||
    public override async Task<Shared.Proto.Transaction> Transfer(
 | 
			
		||||
        TransferRequest request,
 | 
			
		||||
        ServerCallContext context
 | 
			
		||||
    )
 | 
			
		||||
    {
 | 
			
		||||
        var transaction = await paymentService.TransferAsync(
 | 
			
		||||
            Guid.Parse(request.PayerAccountId),
 | 
			
		||||
@@ -79,4 +100,5 @@ public class PaymentServiceGrpc(PaymentService paymentService) : Shared.Proto.Pa
 | 
			
		||||
        );
 | 
			
		||||
        return transaction.ToProtoValue();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user