e1bd0e3ef7
改了什么:新增新版大盘日期窗口聚合、广告收益拆分、比价耗时字段、美团 CPS 拉单入库与大盘展示,并同步反馈审核和邀请奖励下线口径。 验证:python -m pytest tests/test_admin_read.py tests/test_admin_write.py tests/test_compare_record.py tests/test_invite.py tests/test_feedback.py -q。
62 lines
1.9 KiB
Python
62 lines
1.9 KiB
Python
"""admin 比价记录 debug 页 schema。phone/nickname 由 queries 瞬态挂在 ORM 实例上。"""
|
|
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
|
|
from pydantic import BaseModel, ConfigDict
|
|
|
|
|
|
class AdminComparisonListItem(BaseModel):
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
id: int
|
|
user_id: int
|
|
phone: str | None = None
|
|
nickname: str | None = None
|
|
business_type: str
|
|
trace_id: str
|
|
trace_url: str | None = None
|
|
status: str
|
|
information: str | None = None
|
|
store_name: str | None = None
|
|
source_platform_name: str | None = None
|
|
best_platform_name: str | None = None
|
|
source_price_cents: int | None = None
|
|
best_price_cents: int | None = None
|
|
saved_amount_cents: int | None = None
|
|
total_ms: int | None = None
|
|
step_count: int | None = None
|
|
llm_call_count: int | None = None
|
|
retry_count: int | None = None
|
|
input_tokens: int | None = None
|
|
output_tokens: int | None = None
|
|
device_model: str | None = None
|
|
rom_vendor: str | None = None
|
|
rom_name: str | None = None
|
|
android_version: str | None = None
|
|
app_version: str | None = None
|
|
created_at: datetime
|
|
|
|
|
|
class AdminComparisonDetail(AdminComparisonListItem):
|
|
source_platform_id: str | None = None
|
|
source_package: str | None = None
|
|
best_platform_id: str | None = None
|
|
best_deeplink: str | None = None
|
|
is_source_best: bool | None = None
|
|
total_dish_count: int | None = None
|
|
skipped_dish_count: int | None = None
|
|
device_id: str | None = None
|
|
items: list = []
|
|
comparison_results: list = []
|
|
skipped_dish_names: list = []
|
|
device_manufacturer: str | None = None
|
|
rom_version: int | None = None
|
|
android_sdk: int | None = None
|
|
app_version_code: int | None = None
|
|
source_app_version: str | None = None
|
|
longitude: float | None = None
|
|
latitude: float | None = None
|
|
llm_calls: list | None = None
|
|
raw_payload: dict | None = None
|