30 lines
710 B
Python
30 lines
710 B
Python
"""风控预警相关 DTO。"""
|
|
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
from decimal import Decimal
|
|
|
|
from pydantic import BaseModel, field_serializer
|
|
|
|
|
|
class RiskAlertResp(BaseModel):
|
|
"""单条风控预警(列表 / 详情共用)。"""
|
|
|
|
id: int
|
|
customer_id: int
|
|
order_id: int | None
|
|
alert_type: str
|
|
alert_level: str
|
|
trigger_detail: str | None
|
|
transaction_ids: list | None
|
|
confidence: Decimal
|
|
status: str
|
|
handler_id: int | None
|
|
handle_result: str | None
|
|
handle_time: datetime | None
|
|
create_time: datetime
|
|
|
|
@field_serializer("confidence")
|
|
def _fmt_confidence(self, value: Decimal) -> str:
|
|
return f"{value:.2f}"
|