feat: update full path payment
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
from fastapi import Depends
|
||||
from faststream.rabbit.fastapi import RabbitMessage,RabbitRouter
|
||||
from pydantic import BaseModel
|
||||
from src.application.commands import CreateCryptoTransferCompletedCommand
|
||||
from src.application.contracts import ILogger
|
||||
from src.infrastructure.config import settings
|
||||
from src.infrastructure.context_vars import trace_id_var
|
||||
from src.presentation.dependencies.commands import get_crypto_transfer_completed_command
|
||||
from src.presentation.dependencies.logger import get_logger
|
||||
|
||||
|
||||
@@ -15,12 +17,16 @@ class CryptoTransferCompletedMessage(BaseModel):
|
||||
order_id: str
|
||||
trace_id: str
|
||||
message_id: str
|
||||
web3_transaction_hash: str | None = None
|
||||
transaction_hash: str | None = None
|
||||
tx_hash: str | None = None
|
||||
|
||||
|
||||
@crypto_transfer_router.subscriber(settings.RABBIT_CRYPTO_TRANSFER_COMPLETED_QUEUE)
|
||||
async def crypto_transfer_completed_handler(
|
||||
msg_body: CryptoTransferCompletedMessage,
|
||||
message: RabbitMessage,
|
||||
command: CreateCryptoTransferCompletedCommand = Depends(get_crypto_transfer_completed_command),
|
||||
logger: ILogger = Depends(get_logger),
|
||||
) -> None:
|
||||
trace_id=msg_body.trace_id
|
||||
@@ -33,6 +39,12 @@ async def crypto_transfer_completed_handler(
|
||||
'rabbit_message_id':message.message_id,
|
||||
'rabbit_correlation_id':message.correlation_id,
|
||||
})
|
||||
web3_transaction_hash=msg_body.web3_transaction_hash or msg_body.transaction_hash or msg_body.tx_hash
|
||||
await command(
|
||||
order_id=msg_body.order_id,
|
||||
user_id=msg_body.user_id,
|
||||
web3_transaction_hash=web3_transaction_hash,
|
||||
)
|
||||
finally:
|
||||
trace_id_var.reset(token)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user