04edb50acc
- 自动对账接入 app_config 运行时配置(新增 bool 配置类型):env 部署总闸 + DB 运营日常开关 双层;worker 每轮读 DB 即时生效,健康检查改报「env AND DB」实际生效态 - 新增 GET /api/v1/platform/flags(不鉴权)下发 comparing_ad_enabled 远程 kill-switch, 客户端拉取后缓存;空库回退默认 True - 穿山甲发奖回调支持多激励位 m-key(三命名项 PANGLE_REWARD_SECRET_TEST/_DEDICATED/_PROD + 旧逗号分隔合并去重),verify_callback_sign_any 逐个验签任一通过即受理;向后兼容旧单 key - 补 test_platform / bool config 用例;app_config 文档同步 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: OuYingJun1024 <1034284404@qq.com> Reviewed-on: #59 Co-authored-by: ouzhou <ouzhou@wonderable.ai> Co-committed-by: ouzhou <ouzhou@wonderable.ai>
31 lines
1003 B
Python
31 lines
1003 B
Python
"""首页平台级展示数据 schemas(客户端首页门面数字)。"""
|
|
from __future__ import annotations
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class PlatformStatsOut(BaseModel):
|
|
"""首页三统计。total_saved 为分,客户端 ÷100 显示「元」。"""
|
|
|
|
help_users: int # 帮助用户(人)
|
|
total_compares: int # 完成比价(次)
|
|
total_saved_cents: int # 累计节省(分)
|
|
|
|
|
|
class SavingsFeedItem(BaseModel):
|
|
"""首页轮播一条。time 为北京时间 HH:MM:SS。"""
|
|
|
|
masked_user: str # 脱敏用户名,手机尾号(138****5678)或中文昵称(省钱**)混合风格
|
|
saved_amount_cents: int # 节省(分),客户端 ÷100 显示「x.xx 元」
|
|
time: str
|
|
|
|
|
|
class SavingsFeedOut(BaseModel):
|
|
items: list[SavingsFeedItem]
|
|
|
|
|
|
class AppFlagsOut(BaseModel):
|
|
"""客户端拉取的运营 feature flag(不鉴权,登录前也能拉)。客户端缓存后按需读。"""
|
|
|
|
comparing_ad_enabled: bool # 比价/领券期是否展示信息流广告(远程 kill-switch)
|