mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2026-02-12 09:44:28 +01:00
fix monero issue
This commit is contained in:
@@ -17,6 +17,7 @@ namespace BTCPayServer.Services.Altcoins.Monero.Payments
|
||||
public string TransactionId { get; set; }
|
||||
|
||||
public BTCPayNetworkBase Network { get; set; }
|
||||
public long LockTime { get; set; } = 0;
|
||||
|
||||
public string GetPaymentId()
|
||||
{
|
||||
@@ -35,11 +36,17 @@ namespace BTCPayServer.Services.Altcoins.Monero.Payments
|
||||
|
||||
public bool PaymentCompleted(PaymentEntity entity)
|
||||
{
|
||||
return ConfirmationCount >= (Network as MoneroLikeSpecificBtcPayNetwork).MaxTrackedConfirmation;
|
||||
return
|
||||
ConfirmationCount >= LockTime &&
|
||||
ConfirmationCount >= (Network as MoneroLikeSpecificBtcPayNetwork).MaxTrackedConfirmation;
|
||||
}
|
||||
|
||||
public bool PaymentConfirmed(PaymentEntity entity, SpeedPolicy speedPolicy)
|
||||
{
|
||||
if (ConfirmationCount < LockTime)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
switch (speedPolicy)
|
||||
{
|
||||
case SpeedPolicy.HighSpeed:
|
||||
|
||||
@@ -240,7 +240,7 @@ namespace BTCPayServer.Services.Altcoins.Monero.Services
|
||||
|
||||
|
||||
return HandlePaymentData(cryptoCode, transfer.Address, transfer.Amount, transfer.SubaddrIndex.Major,
|
||||
transfer.SubaddrIndex.Minor, transfer.Txid, transfer.Confirmations, transfer.Height, invoice,
|
||||
transfer.SubaddrIndex.Minor, transfer.Txid, transfer.Confirmations, transfer.Height, transfer.UnlockTime,invoice,
|
||||
updatedPaymentEntities);
|
||||
}));
|
||||
}
|
||||
@@ -302,7 +302,7 @@ namespace BTCPayServer.Services.Altcoins.Monero.Services
|
||||
transfer.Transfer.Txid,
|
||||
transfer.Transfer.Confirmations,
|
||||
transfer.Transfer.Height
|
||||
, invoice, paymentsToUpdate);
|
||||
, transfer.Transfer.UnlockTime,invoice, paymentsToUpdate);
|
||||
}
|
||||
|
||||
if (paymentsToUpdate.Any())
|
||||
@@ -320,7 +320,7 @@ namespace BTCPayServer.Services.Altcoins.Monero.Services
|
||||
|
||||
private async Task HandlePaymentData(string cryptoCode, string address, long totalAmount, long subaccountIndex,
|
||||
long subaddressIndex,
|
||||
string txId, long confirmations, long blockHeight, InvoiceEntity invoice,
|
||||
string txId, long confirmations, long blockHeight, long locktime, InvoiceEntity invoice,
|
||||
BlockingCollection<(PaymentEntity Payment, InvoiceEntity invoice)> paymentsToUpdate)
|
||||
{
|
||||
//construct the payment data
|
||||
@@ -333,7 +333,8 @@ namespace BTCPayServer.Services.Altcoins.Monero.Services
|
||||
ConfirmationCount = confirmations,
|
||||
Amount = totalAmount,
|
||||
BlockHeight = blockHeight,
|
||||
Network = _networkProvider.GetNetwork(cryptoCode)
|
||||
Network = _networkProvider.GetNetwork(cryptoCode),
|
||||
LockTime = locktime
|
||||
};
|
||||
|
||||
//check if this tx exists as a payment to this invoice already
|
||||
|
||||
Reference in New Issue
Block a user