diff --git a/backend/services/blockchain-service/src/domain/aggregates/deposit-transaction/deposit-transaction.aggregate.ts b/backend/services/blockchain-service/src/domain/aggregates/deposit-transaction/deposit-transaction.aggregate.ts index 6c7f6cc3..5a8a9881 100644 --- a/backend/services/blockchain-service/src/domain/aggregates/deposit-transaction/deposit-transaction.aggregate.ts +++ b/backend/services/blockchain-service/src/domain/aggregates/deposit-transaction/deposit-transaction.aggregate.ts @@ -161,12 +161,14 @@ export class DepositTransaction extends AggregateRoot { const confirmations = Number(currentBlockNumber.diff(this.props.blockNumber)); this.props.confirmations = Math.max(0, confirmations); + // 检查是否达到确认要求(状态为 DETECTED 或 CONFIRMING 都可以确认) if ( this.props.confirmations >= requiredConfirmations && - this.props.status === DepositStatus.DETECTED + (this.props.status === DepositStatus.DETECTED || this.props.status === DepositStatus.CONFIRMING) ) { this.confirm(); } else if (this.props.status === DepositStatus.DETECTED) { + // 首次检测但确认数不够,标记为确认中 this.props.status = DepositStatus.CONFIRMING; } }