Files
group_fqcd_jr/app/repository/outbox_repository.py
T

18 lines
676 B
Python
Raw Normal View History

2026-09-09 21:55:37 +08:00
from sqlalchemy.ext.asyncio import AsyncSession
from app.core.contracts import DomainEvent
from app.model.platform import DomainEventOutbox
class OutboxRepository:
def __init__(self, session: AsyncSession) -> None:
self.session = session
async def append(self, event: DomainEvent) -> None:
self.session.add(DomainEventOutbox(
event_id=event.event_id, event_type=event.event_type,
aggregate_type=event.aggregate_type, aggregate_id=event.aggregate_id,
trace_id=event.trace_id, payload=event.payload, occurred_at=event.occurred_at,
created_at=event.occurred_at, updated_at=event.occurred_at,
))