Files
shaguabijia-app-server/app/admin/schemas/ad_config.py
T
zzhyyyyy 9986a8c4f8 feat(ad): 提现看视频广告后端支持(withdrawal_ad 场景 + 开关下发)
- pangle-callback 新增 withdrawal_ad 场景:不发金币、只记一条幂等(coin=0),
  避免提现看视频被穿山甲 S2S 回调误发金币
- ad_config 新增 withdrawal_ad_enabled 开关(默认 true),贯穿 admin schema 与
  platform 下发接口,客户端拉取后用(关=直接放行提现)
- 提现广告 eCPM 复用 /ad/ecpm-report,以 ad_type=withdrawal_video 区分收益,无需 DB 迁移
2026-06-24 22:18:52 +08:00

33 lines
1.0 KiB
Python

"""admin 广告配置 schemas(穿山甲 app_id/各位ID/验签密钥/各场景开关)。"""
from __future__ import annotations
from pydantic import BaseModel
class AdConfigOut(BaseModel):
"""admin 读到的完整广告配置(含 reward_mkey;admin 有权见,但绝不经 /platform 下发客户端)。"""
app_id: str
reward_code_id: str
compare_feed_code_id: str
coupon_feed_code_id: str
reward_mkey: str
reward_enabled: bool
compare_ad_enabled: bool
coupon_ad_enabled: bool
withdrawal_ad_enabled: bool
class AdConfigUpdate(BaseModel):
"""部分更新:只改传入(非 None)字段。空串是合法值(如清空 mkey 回退 .env)。"""
app_id: str | None = None
reward_code_id: str | None = None
compare_feed_code_id: str | None = None
coupon_feed_code_id: str | None = None
reward_mkey: str | None = None
reward_enabled: bool | None = None
compare_ad_enabled: bool | None = None
coupon_ad_enabled: bool | None = None
withdrawal_ad_enabled: bool | None = None