Files
fund-tracer/backend/app/schemas/transaction.py
2026-03-17 22:39:05 +08:00

65 lines
1.4 KiB
Python

from datetime import datetime
from uuid import UUID
from app.models.evidence_image import SourceApp
from app.models.transaction import Direction
from app.schemas.base import CamelModel
class TransactionOut(CamelModel):
id: UUID
case_id: UUID
source_app: SourceApp
trade_time: datetime
amount: float
direction: Direction
counterparty_name: str
counterparty_account: str
self_account_tail_no: str
order_no: str
remark: str
evidence_image_id: UUID | None = None
confidence: float
cluster_id: UUID | None = None
is_duplicate: bool
is_transit: bool
class TransactionUpdateIn(CamelModel):
source_app: SourceApp | None = None
trade_time: datetime | None = None
amount: float | None = None
direction: Direction | None = None
counterparty_name: str | None = None
counterparty_account: str | None = None
self_account_tail_no: str | None = None
order_no: str | None = None
remark: str | None = None
confidence: float | None = None
is_duplicate: bool | None = None
is_transit: bool | None = None
class TransactionListOut(CamelModel):
items: list[TransactionOut]
total: int
class FlowNodeOut(CamelModel):
id: str
label: str
type: str
class FlowEdgeOut(CamelModel):
source: str
target: str
amount: float
count: int
trade_time: str
class FlowGraphOut(CamelModel):
nodes: list[FlowNodeOut]
edges: list[FlowEdgeOut]